Patents Examined by Tracy A Warren
  • Patent number: 11983434
    Abstract: A storage product manufactured as a component to be installed in a computing device to provide network storage services. The storage product has a network interface to receive storage access messages from a remote host system, a bus connector connectable via an external computer bus to an external local host system, a local storage device, and a computational storage processor. The storage product is configured to: separate the storage access messages into first messages, second messages, and third messages; provide the first messages to an external local host system to generate fourth messages; and provide the second messages to the computational storage processor to generate fifth messages. To implement network storage services provided via the network interface, the local storage device executes commands in the third messages, the fourth messages from the local host system, and the fifth messages from the computational storage processor.
    Type: Grant
    Filed: July 15, 2022
    Date of Patent: May 14, 2024
    Assignee: Micron Technology, Inc.
    Inventor: Luca Bert
  • Patent number: 11977774
    Abstract: An average number of program erase cycles (PECs) for a memory device is identified. A set of trims associated with the average number of PECs is identified. One or more write trims associated with the memory device are set according to the set of trims. A write command directed to the memory device is received. The write command is executed according to the one or more write trims.
    Type: Grant
    Filed: January 19, 2022
    Date of Patent: May 7, 2024
    Assignee: Micron Technology, Inc.
    Inventors: Steven Michael Kientz, Ugo Russo, Vamsi Pavan Rayaprolu
  • Patent number: 11977494
    Abstract: Systems and methods for implementing a secure communication channel between kernel and user mode components are provided. According to an embodiment, a shared memory is provided through which a kernel mode process and a user mode process communicate. The kernel mode process is assigned read-write access to the shared memory. The user mode process is assigned read-only access to the shared memory. An offset-based linked list is implemented within the shared memory. Kernel-to-user messages are communicated from the kernel mode process to the user mode process by adding corresponding nodes to the offset-based linked list. One or more kernel-to-user messages are read by the user mode process following the offset-based linked list in order. The kernel mode process is signaled by the user mode process that a kernel-to-user message has been consumed by the user mode process through an input output control (ioctl) system call or an event object.
    Type: Grant
    Filed: April 12, 2022
    Date of Patent: May 7, 2024
    Assignee: Fortinet, Inc.
    Inventors: Udi Yavo, Roy Katmor, Ido Kelson
  • Patent number: 11972145
    Abstract: Methods, systems, and devices for opportunistic data movement are described. A memory device may include a non-volatile memory and a volatile memory that operates as a cache for the non-volatile memory. The memory device may receive a write command from a host device. The write command may be associated with a row of a bank in a volatile memory. The memory device may write data associated with the write command to a buffer that is associated with the bank and that is coupled with the volatile memory. And the memory device may communicate the data from the buffer to the volatile memory based on the write command and before a pre-charge command for the row of the bank is received from the host device.
    Type: Grant
    Filed: January 6, 2022
    Date of Patent: April 30, 2024
    Assignee: Micron Technology, Inc.
    Inventors: Saira Samar Malik, Chinnakrishnan Ballapuram, Taeksang Song
  • Patent number: 11966342
    Abstract: A data processing system may be configured to include a memory device, a controller configured to access the memory device when a host requests offload processing of an application, and process the application, and a sharing memory management component within the controller and configured to: set controller owning rights of access to a target region of the memory device in response to the host stores, in the target region, data used for the requested offload processing of the application; and set the controller owning rights of access or the host owning rights of access to the target region based on a processing state of the application.
    Type: Grant
    Filed: August 1, 2022
    Date of Patent: April 23, 2024
    Assignee: SK hynix Inc.
    Inventor: Min Soo Lim
  • Patent number: 11954027
    Abstract: A multiple-actuator hard disk drive includes a first actuator associated with a first logical unit and configured to operate on a first set of disk surfaces, a second actuator associated with a second logical unit and configured to operate on a second set of disk surfaces greater than the first set, and a controller accessing a mapping of logical memory addresses to physical memory locations. The mapping maps the first logical unit to the physical memory locations of the first set of surfaces and a parasitic portion of the second set of surfaces, and maps the second logical unit to the physical memory locations of the second set of surfaces exclusive of the parasitic portion of the second set of surfaces. Thus, data transfer commands performed on the parasitic portion are executed by one actuator while credit is given to the logical unit associated with the other actuator.
    Type: Grant
    Filed: February 23, 2022
    Date of Patent: April 9, 2024
    Assignee: Western Digital Technologies, Inc.
    Inventors: David Hall, Ali Khalili
  • Patent number: 11941294
    Abstract: A memory controller and a method of operating the same. The memory controller which increases the number of read commands to be performed during a suspend period may include a command generator configured to receive a request from a host and generate a command corresponding to the request, a command queue configured to store the generated command, a command controller configured to control the command queue so that the command stored in the command queue is output to the memory device, and a suspension controller configured to, when a read request is input from the host while the memory device is performing an operation, determine a delay amount of time based on a number of read commands stored in the command queue and provide a suspend command that instructs suspension of performance of the operation to the memory device after the delay amount of time has elapsed.
    Type: Grant
    Filed: January 6, 2022
    Date of Patent: March 26, 2024
    Assignee: SK hynix Inc.
    Inventor: Eui Dong Lee
  • Patent number: 11922024
    Abstract: The technology disclosed herein pertains to a method for determining expected command completion time (CCT), the method including receiving a plurality of position error signals (PESs) for an HDD over a predetermined time period, determining sigma of the plurality of PESs, retrieving upper off-track limits (UOL) for one or more data sectors of the HDD, calculating average number of retrieved sectors (A) between two consecutive occurrences of the |PES|>UOL for the HDD, and determining required number of revolutions (CCT) to collect data based on the average number of retrieved data sectors (A) and a total number of requested data sectors (N).
    Type: Grant
    Filed: May 31, 2022
    Date of Patent: March 5, 2024
    Assignee: SEAGATE TECHNOLOGY LLC
    Inventors: Xiong Liu, Wenxiang Xie
  • Patent number: 11922066
    Abstract: An interconnected stack of one or more Dynamic Random Access Memory (DRAM) die has a base logic die and one or more custom logic or processor die. The processor logic die snoops commands sent to and through the stack. In particular, the processor logic die may snoop mode setting commands (e.g., mode register set—MRS commands). At least one mode setting command that is ignored by the DRAM in the stack is used to communicate a command to the processor logic die. In response the processor logic die may prevent commands, addresses, and data from reaching the DRAM die(s). This enables the processor logic die to send commands/addresses and communicate data with the DRAM die(s). While being able to send commands/addresses and communicate data with the DRAM die(s), the processor logic die may execute software using the DRAM die(s) for program and/or data storage and retrieval.
    Type: Grant
    Filed: January 14, 2022
    Date of Patent: March 5, 2024
    Assignee: Rambus Inc.
    Inventors: Thomas Vogelsang, Michael Raymond Miller, Steven C. Woo
  • Patent number: 11922306
    Abstract: A machine-learning accelerator system, comprising: a plurality of controllers each configured to traverse a feature map with n-dimensions according to instructions that specify, for each of the n-dimensions, a respective traversal size, wherein each controller comprises: a counter stack comprising counters each associated with a respective dimension of the n-dimensions of the feature map, wherein each counter is configured to increment a respective count from a respective initial value to the respective traversal size associated with the respective dimension associated with that counter; a plurality of address generators each configured to use the respective counts of the counters to generate at least one memory address at which a portion of the feature map is stored; and a dependency controller computing module configured to (1) track conditional statuses for incrementing the counters and (2) allow or disallow each of the counters to increment based on the conditional statuses.
    Type: Grant
    Filed: December 28, 2020
    Date of Patent: March 5, 2024
    Assignee: Meta Platforms, Inc.
    Inventors: Harshit Khaitan, Ganesh Venkatesh, Simon James Hollis
  • Patent number: 11914868
    Abstract: A storage system comprises nodes and drives, and includes at least one mounting area to install the drives. A node manages a parity group constituted of the plurality of drives; generates, in a case where a target drive that is installed in a first mounting area and that belongs to a first parity group is to be moved from the first mounting area to a second mounting area, difference information regarding a storage area where data was written into the target drive during a period in which the target drive is moved from the first mounting area to the second mounting area; and restore data written into the storage area by using data stored in other drives than the target drive that belongs to the first parity group based on the difference information, and write the data into the target drive that has been moved to the second mounting area.
    Type: Grant
    Filed: September 2, 2022
    Date of Patent: February 27, 2024
    Assignee: Hitachi, Ltd.
    Inventors: Ryo Hanafusa, Tomohiro Yoshihara, Ryosuke Tatsumi, Hiroki Fujii
  • Patent number: 11914518
    Abstract: A cache is provided having a plurality of entries for storing data. In response to a given access request, lookup circuitry performs a lookup operation in the cache to determine whether one of the entries in the cache is allocated to store data associated with the memory address indicated by the given access request, with a hit indication or a miss indication being generated dependent on the outcome of that lookup operation. During a single lookup period, the lookup circuitry is configured to perform lookup operations in parallel for up to N access requests. In addition, allocation circuitry is provided that is able to determine, during the single lookup period, at least N candidate entries for allocation from amongst the plurality of entries, and to cause one of the candidate entries to be allocated for each of the up to N access requests for which the lookup circuitry generates a miss indication.
    Type: Grant
    Filed: September 21, 2022
    Date of Patent: February 27, 2024
    Assignee: Arm Limited
    Inventors: Yoav Asher Levy, Elad Kadosh, Jakob Axel Fries, Lior-Levi Bandal
  • Patent number: 11914863
    Abstract: A serial data buffer integrated circuit comprises unidirectional host-side input and output ports, and unidirectional memory-side input and output ports. Scheduling logic generates memory device commands for writing to and reading from a memory device based on a set of host-side input packets received from a memory controller. A unidirectional serial host side input port receives host-side input packets from the memory controller. A unidirectional serial memory side output port transmits the memory device commands and the write data to the memory device based on the scheduled timing. A unidirectional serial memory side input port receives read data from the memory device in response to a read command, and a unidirectional serial host side output port transmits the read data to the memory controller within the timing constraints of the memory device.
    Type: Grant
    Filed: July 8, 2022
    Date of Patent: February 27, 2024
    Assignee: RAMBUS INC.
    Inventor: Christopher Haywood
  • Patent number: 11907141
    Abstract: Various embodiments include methods for implementing flexible ranks in a memory system. Embodiments may include receiving, at a memory controller, a first memory access command and a first address at which to implement the first memory access command in a logical rank, generating, by the memory controller, a first signal configured to indicate to a first memory device of the logical rank to implement the first memory access command via a first partial channel, sending, from the memory controller, the first signal to the first memory device, generating, by the memory controller, a second signal configured to indicate to a second memory device of the logical rank that is different from the first memory device to implement the first memory access command via a second partial channel, and sending, from the memory controller, the second signal to the second memory device.
    Type: Grant
    Filed: September 6, 2022
    Date of Patent: February 20, 2024
    Assignee: QUALCOMM Incorporated
    Inventors: Jungwon Suh, Pankaj Deshmukh, Shyamkumar Thoziyoor, Subbarao Palacharla
  • Patent number: 11907120
    Abstract: A computing device includes a host device and a storage device. The host device is configured to receive instruction information via a code bus based on a code address comprised in a code address map of particular address maps and receive data via a system bus that is separate from the code bus based on a data address included in a data address map. The storage device is configured to store target instruction information via the system bus and provide the target instruction information to the host device via the code bus in response to a request from the host device for an object code address included in the code address map and corresponding to the target instruction information.
    Type: Grant
    Filed: April 21, 2022
    Date of Patent: February 20, 2024
    Assignee: Samsung Electronics Co., Ltd.
    Inventor: Keonhan Sohn
  • Patent number: 11907577
    Abstract: A plurality of commands is received from at least one application. A command of the plurality of commands is to be performed by a Data Storage Device (DSD) after one or more conditions have been satisfied by the DSD. The plurality of commands is enqueued and the command is enqueued with the one or more conditions for performing the command. It is determined whether the one or more conditions have been satisfied by the DSD, and in response to determining that the one or more conditions have been satisfied by the DSD, the command is sent to the DSD for performance of the command.
    Type: Grant
    Filed: December 6, 2021
    Date of Patent: February 20, 2024
    Assignee: Western Digital Technologies, Inc.
    Inventors: Tomer Spector, Doron Ganon, Eran Arad
  • Patent number: 11907549
    Abstract: A system for allocation of one or more data structures used in a program across a number of processing units takes into account a memory access pattern of the data structure, and the amount of total memory available for duplication across the several processing units. Using these parameters duplication factors are determined for the one or more data structures such that the cost of remote communication is minimized when the data structures are duplicated according to the respective duplication factors while allowing parallel execution of the program.
    Type: Grant
    Filed: June 24, 2021
    Date of Patent: February 20, 2024
    Assignee: QUALCOMM Incorporated
    Inventors: Muthu Manikandan Baskaran, Thomas Henretty, Ann Johnson, Athanasios Konstantinidis, M. H. Langston, Janice O. Mcmahon, Benoit J. Meister, Paul D. Mountcastle, Aale Naqvi, Benoit Pradelle, Tahina Ramananandro, Sanket Tavarageri, Richard A. Lethin
  • Patent number: 11886744
    Abstract: A method, computer program product, apparatus, and system are provided. Some embodiments may include transmitting a request to make one or more writes associated with an identification tag. The request may include the identification tag, the one or more writes, a first instruction to make the one or more writes to one of a plurality of persistence levels of a memory, and a second instruction to respond with at least one first indication that the one or more writes associated with the identification tag have been written to at least one of the one of the plurality of persistence levels of the memory. Some embodiments may include receiving the at least one first indication that the one or more writes associated with the identification tag have been written to at least one of the one of the plurality of persistence levels of the memory.
    Type: Grant
    Filed: December 15, 2021
    Date of Patent: January 30, 2024
    Assignee: NVIDIA CORPORATION
    Inventor: Stephen David Glaser
  • Patent number: 11880601
    Abstract: A storage device having improved performance includes: a plurality of memory devices, each memory device including a plurality of memory blocks, the plurality of memory devices coupled to a channel; and a memory controller coupled to the channel to be in communication with the plurality of memory devices to provide a read command for instructing a read operation on the plurality of memory blocks to read out data and provide a read enable signal to the memory devices during at least part of an idle time of the channel, which occurs while the read operation is being performed. The plurality of memory devices output first data to the memory controller through the channel in response to the read enable signal, wherein the first data is different from the data previously read out by the read operation that provides the read enable signal in response to the read command.
    Type: Grant
    Filed: October 28, 2021
    Date of Patent: January 23, 2024
    Assignee: SK HYNIX INC.
    Inventors: Jae Hyeong Jeong, Dae Sung Kim, Sung Ho Ahn
  • Patent number: 11880600
    Abstract: A write request directed to the non-volatile memory device is received. A stripe associated with an address specified by the write request is present in the volatile memory device is determined. The volatile memory device includes a plurality of stripes, each stripe of the plurality of stripes having a plurality of managed units. The write request on a managed unit of the stripe in the volatile memory device is performed. The stripe in the volatile memory device is evicted to a stripe in the non-volatile memory device.
    Type: Grant
    Filed: September 2, 2021
    Date of Patent: January 23, 2024
    Assignee: Micron Technology, Inc.
    Inventors: Ning Chen, Jiangli Zhu, Yi-Min Lin, Fangfang Zhu