Patents by Inventor Joseph Delgross

Joseph Delgross 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: 10275249
    Abstract: Embodiments include a method comprising: executing a loop during a first encounter of the loop; tracking a first number of times the loop is iterated while the loop is executed during the first encounter; executing the loop during a second encounter of the loop; tracking a second number of times the loop is iterated while the loop is executed during the second encounter; and in response to the first number being equal to the second number, predicting a behavior of the loop during a third encounter of the loop.
    Type: Grant
    Filed: September 21, 2016
    Date of Patent: April 30, 2019
    Assignee: Marvell International Ltd.
    Inventors: Daniel J. Richins, Joseph Delgross
  • Patent number: 9892051
    Abstract: A method can include executing a store instruction that instructs storing of data at an address and, in response to the store instruction, inserting a preloading instruction after the store instruction but before a dependent load instruction to the address. Executing the store instruction can include invalidating a data entry of a cache array at an address of the cache array corresponding to the address and writing the data to a backing memory at an address of the backing memory corresponding to the address. The preloading instruction can cause filling the data entry of the cache array, at the address of the cache array corresponding to the address, with the data from the backing memory at the address of the backing memory corresponding to the address and validating the data entry of the cache array.
    Type: Grant
    Filed: January 26, 2015
    Date of Patent: February 13, 2018
    Assignee: MARVELL INTERNATIONAL LTD.
    Inventors: Sujat Jamil, R. Frank O'Bleness, Russell J. Robideau, Tom Hameenanttila, Joseph Delgross, David E. Miner
  • Patent number: 9606800
    Abstract: A microprocessor includes a front end module and a schedule queue module. The front end module is configured to retrieve first instructions, corresponding to a first thread, from an instruction cache, and retrieve second instructions, corresponding to a second thread, from the instruction cache. The front end module is also configured to decode the first instructions into first decoded instructions, and decode the second instructions into second decoded instructions. The schedule queue module is configured to selectively store the first decoded instructions and the second decoded instructions from the front end module and, for each stored decoded instruction, selectively issue the stored decoded instruction to an execution module. The schedule queue is further configured to reject storing an additional one of the first decoded instructions from the front end module in response to a count of the stored first decoded instructions in the schedule queue module exceeding a threshold.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: March 28, 2017
    Assignee: Marvell International Ltd.
    Inventors: Tom Hameenanttila, R. Frank O'Bleness, Sujat Jamil, Joseph Delgross
  • Patent number: 9442735
    Abstract: Apparatus having corresponding methods and computer-readable media comprise: a speculative store buffer memory; and a speculative store buffer controller comprising a store address comparator to compare an address of a received store instruction with addresses of store instructions allocated in the speculative store buffer memory, and a store age comparator to compare an age of the received store instruction with an age of a matching store instruction allocated in the speculative store buffer memory, wherein the speculative store buffer controller replaces the store instruction allocated in the speculative store buffer memory with the received store instruction responsive to the store instruction allocated in the speculative store buffer memory being younger than the received store instruction.
    Type: Grant
    Filed: April 4, 2013
    Date of Patent: September 13, 2016
    Assignee: Marvell International Ltd.
    Inventors: Sujat Jamil, R. Frank O'Bleness, Tom Hameenanttila, Joseph Delgross
  • Patent number: 9223709
    Abstract: A cache management unit manages allocation and configuration of a cache memory that is utilized by a multi-threaded processor. In some implementations, the cache management unit is configured to determine a number of active threads being executed by the multi-threaded processor, assign a separate cache unit to each active thread when the number of active threads is equal to a maximum number of active threads supported by the multi-threaded processor, and assign more than one cache unit to an active thread when the number of active threads is less than the maximum number of active threads.
    Type: Grant
    Filed: March 1, 2013
    Date of Patent: December 29, 2015
    Assignee: Marvell International Ltd.
    Inventors: R. Frank O'Bleness, Sujat Jamil, Tom Hameenanttila, Joseph Delgross
  • Patent number: 9058272
    Abstract: An apparatus including a snoop filter decoupled from a cache and an associated method for snoop filtering are disclosed. The snoop filter is decoupled from the cache such that the cache changes states of lines in the cache from a first state that is a clean state, such as an exclusive (E) state, to a second state that is not a clean state, such as a modified (M) state, without the snoop filter's knowledge. The snoop filter buffers addresses of replaced lines that are unknown to be clean until a write-back associated with the replacement lines occurs, or until actual states of the replaced lines are determined by the snoop filter generating a snoop. A multi-level cache system in which a reallocation or replacement policy is biased to favor replacing certain lines such as inclusive lines, non-temporal lines or prefetched lines that have not been accessed, is also disclosed.
    Type: Grant
    Filed: December 19, 2013
    Date of Patent: June 16, 2015
    Assignee: MARVELL INTERNATIONAL LTD.
    Inventors: Frank O'Bleness, Sujat Jamil, David Miner, Joseph Delgross, Tom Hameenanttila, Jeffrey Kehl, Adi Habusha
  • Patent number: 9026769
    Abstract: A processor for processing loop instructions can include an instruction reorder structure and a loop processing controller. The instruction reorder structure is configured to store decoded instructions according to program order and issue the decoded instructions for execution out of program order. The loop processing controller is configured to detect a loop in the decoded instructions stored in the instruction reorder structure and cause the instruction reorder structure to reissue the decoded instructions that form the loop for re-execution.
    Type: Grant
    Filed: January 24, 2012
    Date of Patent: May 5, 2015
    Assignee: Marvell International Ltd.
    Inventors: Sujat Jamil, R. Frank O'Bleness, Joseph Delgross, Tom Hameenanttila
  • Patent number: 8990505
    Abstract: Devices, systems, methods, and other embodiments associated with a cache memory are described. In one embodiment, a cache tag array includes tag banks. The cache memory further includes a bank selector configured to receive an address and to apply a hash function that maps the address to one of the tag banks.
    Type: Grant
    Filed: September 22, 2008
    Date of Patent: March 24, 2015
    Assignee: Marvell International Ltd.
    Inventors: Sujat Jamil, R. Frank O'Bleness, David E. Miner, Joseph Delgross, Tom Hameenanttila
  • Patent number: 8943273
    Abstract: Aspects of the disclosure provide methods for cache efficiency. A method for cache efficiency can include storing data in a buffer entry in association with a cache array in response to a first store instruction that hits the cache array before the first store instruction is committed. Further, when a dependent load instruction is subsequent to the first store instruction, the method can include providing the data from the buffer entry in response to the first dependent load instruction. When a second store instruction overlaps an address of the first store instruction, the method can include coalescing data of the second store instruction in the buffer entry before the second store instruction is committed. When the second store instruction is followed by a second dependent load instruction, the method can include providing the coalesced data from the buffer entry in response to the second dependent load instruction.
    Type: Grant
    Filed: August 14, 2009
    Date of Patent: January 27, 2015
    Assignee: Marvell International Ltd.
    Inventors: Sujat Jamil, R. Frank O'Bleness, Russell Robideau, Tom Hameenanttila, Joseph Delgross, David Miner
  • Patent number: 8769204
    Abstract: A programmable cache and cache access protocol that can be dynamically optimized with respect to either power consumption or performance based on a monitored performance of the cache. A monitoring unit monitors cache misses, load use penalty, and/or other performance parameter, and compares the monitored values against a set of one or more predetermined thresholds. Based on the comparison results, a cache controller configures the programmable cache to operate in a parallel mode, to increase cache performance at the cost of greater power consumption, or in a serial mode, to conserve power at the cost of unnecessary performance. A banked cache memory that supports aligned and unaligned instruction fetches using a banked access strategy, and a cache access controller that includes a prefetch capability are also described.
    Type: Grant
    Filed: June 4, 2013
    Date of Patent: July 1, 2014
    Assignee: Marvell International Ltd.
    Inventors: Joseph Delgross, Sujat Jamil, R. Frank O'Bleness, Tom Hameenanttila, David E. Miner
  • Patent number: 8631206
    Abstract: Set-associative caches having corresponding methods and computer programs comprise: a data cache to provide a plurality of cache lines based on a set index of a virtual address, wherein each of the cache lines corresponds to one of a plurality of ways of the set-associative cache; a translation lookaside buffer to provide one of a plurality of way selections based on the set index of the virtual address and a virtual tag of the virtual address, wherein each of the way selections corresponds to one of the ways of the set-associative cache; and a way multiplexer to select one of the cache lines provided by the data cache based on the one of the plurality of way selections.
    Type: Grant
    Filed: August 20, 2008
    Date of Patent: January 14, 2014
    Assignee: Marvell International Ltd.
    Inventors: R. Frank O'Bleness, Sujat Jamil, David E. Miner, Joseph Delgross, Tom Hameenanttila
  • Patent number: 8458404
    Abstract: A programmable cache and cache access protocol that can be dynamically optimized with respect to either power consumption or performance based on a monitored performance of the cache. A monitoring unit monitors cache misses, load use penalty, and/or other performance parameter, and compares the monitored values against a set of one or more predetermined thresholds. Based on the comparison results, a cache controller configures the programmable cache to operate in a parallel mode, to increase cache performance at the cost of greater power consumption, or in a serial mode, to conserve power at the cost of unnecessary performance. A banked cache memory that supports aligned and unaligned instruction fetches using a banked access strategy, and a cache access controller that includes a prefetch capability are also described.
    Type: Grant
    Filed: August 13, 2009
    Date of Patent: June 4, 2013
    Assignee: Marvell International Ltd.
    Inventors: Joseph Delgross, Sujat Jamil, R. Frank O'Bleness, Tom Hameenanttila, David E. Miner
  • Patent number: 8135916
    Abstract: A processor includes a first level of cache memory and a first set of instructions configured to implement a first cache coherency protocol. The processor also includes a second set of instructions configured to implement a second cache coherency protocol and a cache coherency protocol selector having at least two choice-states. The processor further includes a cache coherency implementer configured to implement the first cache coherency protocol or the second cache coherency with respect to the first level of cache memory based on a selected choice-state of the cache coherency protocol selector.
    Type: Grant
    Filed: April 1, 2009
    Date of Patent: March 13, 2012
    Assignee: Marvell International Ltd.
    Inventors: R. Frank O'Bleness, Sujat Jamil, David E. Miner, Joseph Delgross, Tom Hameenanttila, Jeffrey Kehl