Patents by Inventor Andrew LUKEFAHR

Andrew LUKEFAHR 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: 11321604
    Abstract: Subject matter disclosed herein may relate to storage and/or processing of signals and/or states representative of neural network parameters in a computing device, and may relate more particularly to compressing signals and/or states representative of neural network nodes in a computing device.
    Type: Grant
    Filed: June 21, 2017
    Date of Patent: May 3, 2022
    Assignees: ARM Ltd., The Regents of the University of Michigan
    Inventors: Jiecao Yu, Andrew Lukefahr, David Palframan, Ganesh Dasika, Reetuparnda Das, Scott Mahlke
  • Patent number: 11275996
    Abstract: Subject matter disclosed herein may relate to storage of signals and/or states representative of parameters in a computing device, and may relate more particularly to storage of signals and/or states representative of neural network parameters in a computing device.
    Type: Grant
    Filed: June 21, 2017
    Date of Patent: March 15, 2022
    Assignees: ARM Ltd., The Regents of the University of Michigan
    Inventors: Jiecao Yu, Andrew Lukefahr, David Palframan, Ganesh Dasika, Reetuparnda Das, Scott Mahlke
  • Patent number: 11264991
    Abstract: A field-programmable gate array (FPGA) architecture capable of performing immutable hardware Root-of-Trust updates and patches. In embodiments, the architecture utilizes the dielectric breakdown mechanism of magneto tunnel junctions (MTJ) to operate both as: 1) multi-time programmable (MTP) configuration memory for reconfigurable FPGA designs, and 2) one-time programmable (OTP) memory for FPGA Root-of-Trust sections.
    Type: Grant
    Filed: November 25, 2020
    Date of Patent: March 1, 2022
    Inventors: Andrew Lukefahr, Adam Duncan
  • Publication number: 20210159902
    Abstract: A field-programmable gate array (FPGA) architecture capable of performing immutable hardware Root-of-Trust updates and patches. In embodiments, the architecture utilizes the dielectric breakdown mechanism of magneto tunnel junctions (MTJ) to operate both as: 1) multi-time programmable (MTP) configuration memory for reconfigurable FPGA designs, and 2) one-time programmable (OTP) memory for FPGA Root-of-Trust sections.
    Type: Application
    Filed: November 25, 2020
    Publication date: May 27, 2021
    Inventors: Andrew Lukefahr, Adam Duncan
  • Patent number: 10613866
    Abstract: A method, apparatus, and CRM that detect repetition of an out-of-order execution schedule for a group of instructions executed by an out-of-order processor. Data indicative of at least one performance metric for an instance of execution of said group of instructions by the out-of-order processor is determined. The determined data are compared with previous data of the at least one performance metric for at least one previous instance of execution of the group of instructions by the out-of-order processor. Repetition of the out-of-order execution schedule is detected dependent on the comparison.
    Type: Grant
    Filed: April 4, 2017
    Date of Patent: April 7, 2020
    Assignee: The Regents of the University of Michigan
    Inventors: Shruti Padmanabha, Andrew Lukefahr, Reetuparna Das, Scott Mahlke
  • Patent number: 10310858
    Abstract: Apparatus and a corresponding method for controlling a transition between use of first processing circuitry and second processing circuitry to execute program instructions are provided. Transition monitoring storage selects an entry for a load program instruction executed during the transition in dependence on a memory address from which a value is to be loaded and stores a program order timestamp for the load program instruction, unless a valid previously stored program order timestamp in the entry precedes the program order timestamp. Thus the oldest timestamp of an load instruction executed in the transition is held. At either the start or end (or both) of the transition the content of the transition monitoring storage is cleared.
    Type: Grant
    Filed: March 8, 2016
    Date of Patent: June 4, 2019
    Assignee: The Regents of the University of Michigan
    Inventors: Andrew Lukefahr, Shruti Padmanabha, Reetuparna Das, Scott Mahlke, Jiecao Yu
  • Publication number: 20180373975
    Abstract: Subject matter disclosed herein may relate to storage and/or processing of signals and/or states representative of neural network parameters in a computing device, and may relate more particularly to compressing signals and/or states representative of neural network nodes in a computing device.
    Type: Application
    Filed: June 21, 2017
    Publication date: December 27, 2018
    Inventors: Jiecao Yu, Andrew Lukefahr, David Palframan, Ganesh Dasika, Reetuparnda Das, Scott Mahlke
  • Publication number: 20180373978
    Abstract: Subject matter disclosed herein may relate to storage of signals and/or states representative of parameters in a computing device, and may relate more particularly to storage of signals and/or states representative of neural network parameters in a computing device.
    Type: Application
    Filed: June 21, 2017
    Publication date: December 27, 2018
    Inventors: Jiecao Yu, Andrew Lukefahr, David Palframan, Ganesh Dasika, Reetuparnda Das, Scott Mahlke
  • Publication number: 20180285111
    Abstract: A method of detecting repetition of an out-of-order execution schedule for a group of instructions executed by an out-of-order processor, said method comprising: determining data indicative of at least one performance metric for an instance of execution of said group of instructions by said out-of-order processor; performing a comparison of said determined data with previous data of said at least one performance metric for at least one previous instance of execution of said group of instructions by said out-of-order processor; and detecting repetition of said out-of-order execution schedule dependent on said comparison, a corresponding apparatus and non-transitory computer-readable medium.
    Type: Application
    Filed: April 4, 2017
    Publication date: October 4, 2018
    Inventors: Shruti PADMANABHA, Andrew LUKEFAHR, Reetuparna DAS, Scott MAHLKE
  • Patent number: 9965279
    Abstract: An apparatus for processing data includes first execution circuitry, such as an out-of-order processor, and second execution circuitry, such as an in-order processor. The first execution circuitry is of higher performance but uses more energy than the second execution circuitry. Control circuitry switches between the first execution circuitry being active and the second execution circuitry being active. The control circuitry includes prediction circuitry which is configured to predict a predicted identity of a next sequence of program instructions to be executed in dependence upon a most recently executed sequence of program instructions and then in dependence upon this predicted identity to predict a predicted execution target corresponding to whether the next sequence of program instructions should be executed by the first execution circuitry or the second execution circuitry.
    Type: Grant
    Filed: November 29, 2013
    Date of Patent: May 8, 2018
    Assignee: The Regents of the University of Michigan
    Inventors: Shruti Padmanabha, Andrew Lukefahr, Reetuparna Das, Scott Mahlke
  • Patent number: 9870226
    Abstract: A data processing apparatus includes a first execution mechanism, such as an out-of-order processing circuitry, and a second execution mechanism 6 such as an in-order processing circuitry. Switching control circuitry controls switching between which of the first execution circuitry and the second execution circuitry is active at a given time. Latency indicating signals indicative of the latency associated with a candidate switching operation to be performed are supplied to the switching control circuitry and used to control the switching operation. The control of the switching operation may be to accelerate the switching operation, prevent the switching operation, perform early architectural state data transfer or other possibilities.
    Type: Grant
    Filed: July 3, 2014
    Date of Patent: January 16, 2018
    Assignee: The Regents of the University of Michigan
    Inventors: Shruti Padmanabha, Andrew Lukefahr, Reetuparna Das, Scott Mahlke
  • Publication number: 20170262285
    Abstract: Apparatus and a corresponding method for controlling a transition between use of first processing circuitry and second processing circuitry to execute program instructions are provided. Transition monitoring storage selects an entry for a load program instruction executed during the transition in dependence on a memory address from which a value is to be loaded and stores a program order timestamp for the load program instruction, unless a valid previously stored program order timestamp in the entry precedes the program order timestamp. Thus the oldest timestamp of an load instruction executed in the transition is held. At either the start or end (or both) of the transition the content of the transition monitoring storage is cleared.
    Type: Application
    Filed: March 8, 2016
    Publication date: September 14, 2017
    Inventors: Andrew LUKEFAHR, Shruti PADMANABHA, Reetuparna DAS, Scott MAHLKE, Jiecao YU
  • Patent number: 9639363
    Abstract: A processor core includes a front end, and first and second back ends, the front end including a fetch engine configured to retrieve the sequence of data processing instructions for both the first back end and the second back end from a memory, and the first and second back ends are each configured to execute the sequence of program instructions. The core operates in a first mode in which the first back end is active and receives the sequence of data processing instructions from the fetch engine and the second back end is inactive, and a second mode in which the first back end is inactive and the second back end is active and receives the sequence of data processing instructions from the fetch engine, where the cycles-per-instruction rate is lower and energy consumption is higher for the first mode than the second mode.
    Type: Grant
    Filed: November 29, 2013
    Date of Patent: May 2, 2017
    Assignee: The Regents of the University of Michigan
    Inventors: Andrew Lukefahr, Reetuparna Das, Shruti Padmanabha, Scott Mahlke
  • Publication number: 20160004534
    Abstract: A data processing apparatus 2 includes a first execution mechanism 4, such as an out-of-order processing circuitry, and a second execution mechanism 6 such as an in-order processing circuitry. Switching control circuitry 24 controls switching between which of the first execution circuitry 4 and the second execution circuitry 6 is active at a given time. Latency indicating signals indicative of the latency associated with a candidate switching operation to be performed are supplied to the switching control circuitry 24 and used to control the switching operation. The control of the switching operation may be to accelerate the switching operation, prevent the switching operation, perform early architectural state data transfer or other possibilities.
    Type: Application
    Filed: July 3, 2014
    Publication date: January 7, 2016
    Inventors: Shruti PADMANABHA, Andrew LUKEFAHR, Reetuparna DAS, Scott MAHLKE
  • Publication number: 20150154021
    Abstract: An apparatus 2 for processing data includes first execution circuitry 4, such as an out-of-order processor, and second execution circuitry 6, such as an in-order processor. The first execution circuitry 4 is of higher performance but uses more energy than the second execution circuitry 6. Control circuitry 24 switches between the first execution circuitry 4 being active and the second execution circuitry 6 being active. The control circuitry includes prediction circuitry which is configured to predict a predicted identity of a next sequence of program instructions to be executed in dependence upon a most recently executed sequence of program instructions and then in dependence upon this predicted identity to predict a predicted execution target corresponding to whether the next sequence of program instructions should be executed by the first execution circuitry or the second execution circuitry.
    Type: Application
    Filed: November 29, 2013
    Publication date: June 4, 2015
    Applicant: THE REGENTS OF THE UNIVERSITY OF MICHIGAN
    Inventors: Shruti Padmanabha, Andrew Lukefahr, Reetuparna Das, Scott Mahlke
  • Publication number: 20150121048
    Abstract: A processor core includes a front end, and first and second back ends, the front end including a fetch engine configured to retrieve the sequence of data processing instructions for both the first back end and the second back end from a memory, and the first and second back ends are each configured to execute the sequence of program instructions. The core operates in a first mode in which the first back end is active and receives the sequence of data processing instructions from the fetch engine and the second back end is inactive, and a second mode in which the first back end is inactive and the second back end is active and receives the sequence of data processing instructions from the fetch engine, where the cycles-per-instruction rate is lower and energy consumption is higher for the first mode than the second mode.
    Type: Application
    Filed: November 29, 2013
    Publication date: April 30, 2015
    Applicant: THE REGENTS OF THE UNIVERSITY OF MICHIGAN
    Inventors: Andrew LUKEFAHR, Reetuparna DAS, Shruti PADMANABHA, Scott MAHLKE