Patents by Inventor Patrick Estep

Patrick Estep 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).

  • Patent number: 12613776
    Abstract: There are provided methods and systems for improving RAS features of a memory device. For example, there is provided a system that includes a memory and a memory side cache. The system further includes a processor that is configured to minimize accesses to the memory by executing certain operations. The operations can include computing a new parity based on old data, new data, and an old parity in response to data from the memory side cache being written to the memory.
    Type: Grant
    Filed: August 26, 2022
    Date of Patent: April 28, 2026
    Assignee: Micron Technology, Inc.
    Inventors: Patrick Estep, Stephen Pawlowski, Emanuele Confalonieri, Nicola Del Gatto, Paolo Amato
  • Patent number: 12591470
    Abstract: Devices and techniques for providing receipts for event messages in a processor are described herein. A system includes multiple memory-compute nodes coupled to one another over a scale fabric; a set of registers; and an event manager hardware circuitry to: receive an event message corresponding to an event, and the event associated with an event mode; track a counter value representing a number of received event messages related to the event, the counter value stored in the set of registers; compare the number of received event messages to a trigger value; and in response to the number of received event messages equaling the trigger value: use an atomic operation to reset the counter value in the set of registers while maintaining the event mode; and alert a thread of the event.
    Type: Grant
    Filed: August 18, 2021
    Date of Patent: March 31, 2026
    Assignee: Micron Technology, Inc.
    Inventors: Patrick Estep, Tony M. Brewer
  • Publication number: 20260037474
    Abstract: System and techniques for performing a reduction operation using event hardware are described herein. In an environment in which sub-processes are run on different processors, and these sub-processes inform a head process via event messaging, when a reduction operation is completed by a sub-process of the sub-processes, the partial result of the sub-process is received at event management circuitry of the processor of the head process. The event management circuitry uses the partial result to update an incremental result to the reduction operation as each sub-process result event message is received.
    Type: Application
    Filed: July 31, 2024
    Publication date: February 5, 2026
    Inventors: Patrick Estep, Randall Meyer, Tony M. Brewer, Michael Keith Dugan
  • Patent number: 12541368
    Abstract: Various examples are directed to systems and methods for executing a loop in a reconfigurable compute fabric. A first flow controller may initiate a first thread at a first synchronous flow to execute a first portion of a first iteration of the loop. A second flow controller may receive a first asynchronous message instructing the second flow controller to initiate a first thread at a second synchronous flow to execute a second portion of the first iteration. The second flow controller may determine that the first iteration of the loop is the last iteration of the loop to be executed and initiate the first thread at the second synchronous flow with a last iteration flag set.
    Type: Grant
    Filed: January 29, 2024
    Date of Patent: February 3, 2026
    Assignee: Micron Technology, Inc.
    Inventors: Douglas Vanesko, Bryan Hornung, Patrick Estep
  • Publication number: 20250378030
    Abstract: In some implementations, an emulation system may store a set of data to a first memory copy location of an emulated environment that is associated with a first virtual host system. The emulation system may copy the set of data from the first memory copy location to a shared memory location of the emulated environment. The emulation system may copy the set of data from the shared memory location to a second memory copy location of the emulated environment that is associated with a second virtual host system. The emulation system may load the set of data from the second memory copy location.
    Type: Application
    Filed: April 21, 2025
    Publication date: December 11, 2025
    Inventors: Patrick ESTEP, Tony M. BREWER, Bashar ROMANOUS, Skyler A. WINDH
  • Publication number: 20250355705
    Abstract: Devices and techniques for thread scheduling control and memory splitting in a processor are described herein. An apparatus includes a hardware interface configured to receive a first request to execute a first thread, the first request including an indication of a workload; and processing circuitry configured to: determine the workload to produce a metric based at least in part on the indication; compare the metric with a threshold to determine that the metric is beyond the threshold; divide, based at least in part on the comparison, the workload into a set of sub-workloads consisting of predefined number of equal parts from the workload; create a second request to execute a second thread, the second request including a first member of the set of sub-workloads; and process a second member of the set of sub-workloads in the first thread.
    Type: Application
    Filed: July 29, 2025
    Publication date: November 20, 2025
    Inventors: Skyler Arron Windh, Tony M. Brewer, Patrick Estep
  • Publication number: 20250335357
    Abstract: Apparatus and methods are disclosed, including sending, by an application executing on a processor of a computing system to a dynamic random access memory (DRAM), a memory operation indicating a DRAM cache line stored in the DRAM; receiving, by the processor, DRAM metadata stored in the DRAM for the DRAM cache line; identifying, by the processor, a tiered memory region of multiple tiered memory regions storing a tiered memory cache line containing target data of the memory operation when the DRAM metadata indicates that the target data is not stored in the DRAM cache line; and loading the tiered memory cache line containing the target data into the DRAM, loading the DRAM cache line into the identified tiered memory region, and updating the DRAM metadata.
    Type: Application
    Filed: April 29, 2025
    Publication date: October 30, 2025
    Inventors: Patrick Estep, Brian Hirano, Stephen S. Pawlowski
  • Publication number: 20250315376
    Abstract: A processing device in a system receives a first request for a first set of memory addresses. The processing device determines, based on the first request, whether to assign a first set of physical addresses of a portion of physical addresses of a memory device as the first set of memory addresses. Responsive to determining not to assign the first set of physical addresses, the processing device requests a first set of virtual addresses of a plurality of contiguous virtual addresses. A first portion of virtual addresses of the plurality of contiguous virtual addresses contiguously maps to a second portion of physical addresses of the memory device. The processing device stores data to a second set of physical addresses contiguously mapped to the first set of virtual addresses.
    Type: Application
    Filed: April 1, 2025
    Publication date: October 9, 2025
    Inventors: Patrick Estep, Bryan Dale Hornung, Craig William Warner
  • Publication number: 20250315192
    Abstract: Systems, apparatuses, and methods related to data reconstruction based on queue depth comparison are described. To avoid accessing the “congested” channel, a read command to access the “congested” channel can be executed by accessing the other relatively “idle” channels and utilize data read from the “idle” channels to reconstruct data corresponding to the read command.
    Type: Application
    Filed: June 23, 2025
    Publication date: October 9, 2025
    Inventors: Patrick Estep, Sean S. Eilert, Ameen D. Akel
  • Publication number: 20250315379
    Abstract: A processing device in a memory sub-system receives a first set of requests to access first data stored at a first set of physical addresses. The processing device identifies, using a physical address table comprising information about (i) a host and (ii) an application assigned to respective sets of physical addresses, a first host identity and a first application identity corresponding to the first set of physical addresses. The processing device further provides the first set of requests, the first host identity and the first application identity to a prefetch prediction engine. The processing device receives an output of the prefetch prediction engine, the output comprising a first memory address for prefetching second data from the first set of physical addresses to fulfill a second set of requests.
    Type: Application
    Filed: April 1, 2025
    Publication date: October 9, 2025
    Inventors: Patrick Estep, David Andrew Roberts
  • Publication number: 20250298749
    Abstract: An apparatus can include a plurality of memory devices and a memory controller coupled to the plurality of memory devices via a plurality of memory channels. The plurality of memory channels are organized as a plurality of channel groups. The memory controller comprises a plurality of memory access request/response buffer sets, and each memory access request/response buffer set of the plurality of memory access request/response buffer sets corresponds to a different one of the plurality of channel groups.
    Type: Application
    Filed: June 6, 2025
    Publication date: September 25, 2025
    Inventors: Emanuele Confalonieri, Stephen S. Pawlowski, Patrick Estep
  • Patent number: 12386656
    Abstract: Devices and techniques for thread scheduling control and memory splitting in a processor are described herein. An apparatus includes a hardware interface configured to receive a first request to execute a first thread, the first request including an indication of a workload; and processing circuitry configured to: determine the workload to produce a metric based at least in part on the indication; compare the metric with a threshold to determine that the metric is beyond the threshold; divide, based at least in part on the comparison, the workload into a set of sub-workloads consisting of predefined number of equal parts from the workload; create a second request to execute a second thread, the second request including a first member of the set of sub-workloads; and process a second member of the set of sub-workloads in the first thread.
    Type: Grant
    Filed: September 2, 2021
    Date of Patent: August 12, 2025
    Assignee: Micron Technology, Inc.
    Inventors: Skyler Arron Windh, Tony M. Brewer, Patrick Estep
  • Publication number: 20250245164
    Abstract: Systems, apparatuses, and methods related to a memory controller for cache bypass are described. An example memory controller can be coupled to a memory device. The example memory controller can include a cache including a cache sequence controller configured to determine a quantity of a given type of result of cache look-up operations, determine the quantity satisfies a bypass threshold, and cause performance of a bypass memory operation that bypasses the cache and accesses the memory device.
    Type: Application
    Filed: April 18, 2025
    Publication date: July 31, 2025
    Inventors: Emanuele Confalonieri, Patrick Estep, Stephen S. Pawlowski, Nicola Del Gatto
  • Patent number: 12340125
    Abstract: Systems, apparatuses, and methods related to data reconstruction based on queue depth comparison are described. To avoid accessing the “congested” channel, a read command to access the “congested” channel can be executed by accessing the other relatively “idle” channels and utilize data read from the “idle” channels to reconstruct data corresponding to the read command.
    Type: Grant
    Filed: December 6, 2023
    Date of Patent: June 24, 2025
    Assignee: Micron Technology, Inc.
    Inventors: Patrick Estep, Sean S. Eilert, Ameen D. Akel
  • Patent number: 12332803
    Abstract: An apparatus can include a plurality of memory devices and a memory controller coupled to the plurality of memory devices via a plurality of memory channels. The plurality of memory channels are organized as a plurality of channel groups. The memory controller comprises a plurality of memory access request/response buffer sets, and each memory access request/response buffer set of the plurality of memory access request/response buffer sets corresponds to a different one of the plurality of channel groups.
    Type: Grant
    Filed: May 26, 2023
    Date of Patent: June 17, 2025
    Assignee: Micron Technology, Inc.
    Inventors: Emanuele Confalonieri, Stephen S. Pawlowski, Patrick Estep
  • Patent number: 12282433
    Abstract: Systems, apparatuses, and methods related to a memory controller for cache bypass are described. An example memory controller can be coupled to a memory device. The example memory controller can include a cache including a cache sequence controller configured to determine a quantity of a given type of result of cache look-up operations, determine the quantity satisfies a bypass threshold, and cause performance of a bypass memory operation that bypasses the cache and accesses the memory device.
    Type: Grant
    Filed: June 27, 2023
    Date of Patent: April 22, 2025
    Assignee: Micron Technology, Inc.
    Inventors: Emanuele Confalonieri, Patrick Estep, Stephen S. Pawlowski, Nicola Del Gatto
  • Publication number: 20250094242
    Abstract: Devices and techniques for chained resource locking are described herein. Threads form a last-in-first-out (LIFO) queue on a resource lock to create a chained lock on the resource. A data store representing the lock for the resource holds the previous thread's identifier, enabling a subsequent thread to wake the previous thread using the identifier when the subsequent thread releases the lock. Generally, the thread releasing the lock need not interact with the data store, reducing contention for the data store among many threads.
    Type: Application
    Filed: November 25, 2024
    Publication date: March 20, 2025
    Inventors: Patrick Estep, Tony M. Brewer
  • Publication number: 20250068572
    Abstract: Linear interpolation is performed within a memory system. The memory system receives a floating-point point index into an integer-indexed memory array. The memory system accesses the two values of the two adjacent integer indices, performs the linear interpolation, and provides the resulting interpolated value. In many system architectures, the critical limitation on system performance is the data transfer rate between memory and processing elements. Accordingly, reducing the amount of data transferred improves overall system performance and reduces power consumption.
    Type: Application
    Filed: November 15, 2024
    Publication date: February 27, 2025
    Inventors: Bryan Hornung, Tony M. Brewer, Douglas Vanesko, Patrick Estep
  • Publication number: 20250036284
    Abstract: Methods, systems, and devices for techniques for data transfer between tiered memory devices are described. A memory system may include a data transfer engine to manage data transfers between different tiers of memory devices within the memory system. The data transfer engine may receive a command which includes a set of source addresses of each of a set of data sets and a set of destination addresses to which the data sets are to be transferred. The data transfer engine may schedule and perform a transfer operation to transfer each of the set of data sets from the respective source address to the respective destination address. The command may further include an indication of an interrupt policy of a set of interrupt policies supported by the data transfer engine. The set of interrupt policies may determine how the data transfer engine may handle interruptions to the data transfer operation.
    Type: Application
    Filed: July 16, 2024
    Publication date: January 30, 2025
    Inventors: David Andrew Roberts, Patrick Estep
  • Publication number: 20250028632
    Abstract: Disclosed in some examples, are methods, systems, devices, and machine-readable mediums which solve the above problems using a global shared region of memory that combines memory segments from multiple CXL devices. Each memory segment is a same size and naturally aligned in its own physical address space. The global shared region is contiguous and naturally aligned in the virtual address space. By organizing this global shared region in this manner, a series of three tables may be used to quickly translate a virtual address in the global shared region to a physical address. This prevents TLB thrashing and improves performance of the computing system.
    Type: Application
    Filed: October 7, 2024
    Publication date: January 23, 2025
    Inventors: Bryan Hornung, Patrick Estep