Patents by Inventor Todd Michael Austin

Todd Michael Austin 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).

  • Publication number: 20110093737
    Abstract: An integrated circuit includes a plurality of processing stages each including processing logic 1014, a non-delayed signal-capture element 1016, a delayed signal-capture element 1018 and a comparator 1024. The non-delayed signal-capture element 1016 captures an output from the processing logic 1014 at a non-delayed capture time. At a later delayed capture time, the delayed signal-capture element 1018 also captures a value from the processing logic 1014. An error detection circuit 1026 and error correction circuit 1028 detect and correct random errors in the delayed value and supplies an error-checked delayed value to the comparator 1024. The comparator 1024 compares the error-checked delayed value and the non-delayed value and if they are not equal this indicates that the non-delayed value was captured too soon and should be replaced by the error-checked delayed value.
    Type: Application
    Filed: October 13, 2010
    Publication date: April 21, 2011
    Inventors: Krisztian Flautner, Todd Michael Austin, David Theodore Blaauw, Trevor Nigel Mudge
  • Patent number: 7701240
    Abstract: An integrated circuit 2 has a specified range of runtime-variable operating parameters. Data processing circuits 4 within the integrated circuit 2 have associated error detection and error repair mechanisms 6. When operating within a narrow typical-case range of runtime-variable operating parameters the data processing circuits 4 operate correctly and substantially without error. When operating outside of this typical-case range but inside the specified range of permitted values for the run-time variable operating parameters, then the error detection and error repair circuit 6 operate to repair the errors which occur.
    Type: Grant
    Filed: December 13, 2005
    Date of Patent: April 20, 2010
    Assignees: ARM Limited, The Regents of the University of Michigan
    Inventors: Krisztian Flautner, David Michael Bull, Todd Michael Austin, David Theodore Blaauw, Trevor Nigel Mudge
  • Publication number: 20100058107
    Abstract: An integrated circuit includes a plurality of processing stages each including processing logic 1014, a non-delayed signal-capture element 1016, a delayed signal-capture element 1018 and a comparator 1024. The non-delayed signal-capture element 1016 captures an output from the processing logic 1014 at a non-delayed capture time. At a later delayed capture time, the delayed signal-capture element 1018 also captures a value from the processing logic 1014. An error detection circuit 1026 and error correction circuit 1028 detect and correct random errors in the delayed value and supplies an error-checked delayed value to the comparator 1024. The comparator 1024 compares the error-checked delayed value and the non-delayed value and if they are not equal this indicates that the non-delayed value was captured too soon and should be replaced by the error-checked delayed value.
    Type: Application
    Filed: August 21, 2009
    Publication date: March 4, 2010
    Applicants: The Regents of the University of Michigan
    Inventors: David Theodore Blaauw, Shidhartha Das, Todd Michael Austin
  • Patent number: 7650551
    Abstract: An integrated circuit includes a plurality of processing stages each including processing logic 2, a non-delayed latch 4, a delayed latch 8 and a comparator 6. The non-delayed latch 4 captures an output from the processing logic 2 at a non-delayed capture time. At a later delayed capture time, the delayed latch 8 also captures a value from the processing logic 2. The comparator 6 compares these values and if they are not equal this indicates that the non-delayed value was captured too soon and should be replaced by the delayed value. The non-delayed value is passed to the subsequent processing stage immediately following its capture and accordingly error recovery mechanisms are used to suppress the erroneous processing which has occurred by the subsequent processing stages, such as gating the clock and allowing the correct signal values to propagate through the subsequent processing logic before restarting the clock.
    Type: Grant
    Filed: August 16, 2007
    Date of Patent: January 19, 2010
    Assignees: ARM Limited, University of Michigan
    Inventors: Krisztian Flautner, Todd Michael Austin, David Theodore Blaauw, Trevor Nigel Mudge
  • Publication number: 20090138772
    Abstract: A method for detecting microprocessor hardware faults includes sending at least one input signal to a logic block within the microprocessor, collecting an output response to the input signal from the logic block, and determining whether the output response matches an expected output response of the logic block.
    Type: Application
    Filed: October 16, 2008
    Publication date: May 28, 2009
    Applicant: THE REGENTS OF THE UNIVERSITY OF MICHIGAN
    Inventors: Valeria Bertacco, Todd Michael Austin, Smitha Shyam, Kypros Constantinides, Sujay Phadke
  • Publication number: 20090089615
    Abstract: A state matcher for a logic circuit may detect at least one of a buggy state of the logic circuit, a precursor to a buggy state of the logic circuit and a verified state of the logic circuit based on a plurality of signal values indicative of a state of the logic circuit. A recovery controller for a microprocessor may reconfigure the microprocessor to a trusted feature mode in response to receiving a signal indicating that the microprocessor is in a predefined state and operate the microprocessor in the trusted feature mode for a predetermined period of time.
    Type: Application
    Filed: July 23, 2008
    Publication date: April 2, 2009
    Applicant: THE REGENTS OF THE UNIVERSITY OF MICHIGAN
    Inventors: Valeria Bertacco, Todd Michael Austin, Ilya Wagner
  • Patent number: 7401273
    Abstract: A data processing apparatus and method are provided for recovering from errors in the data processing apparatus. The data processing apparatus comprises processing logic operable to perform a data processing operation, and a plurality of sampling circuits, each sampling circuit being located at a predetermined point in the processing logic and operable to sample a value of an associated digital signal generated by the processing logic at that predetermined point. Each of the sampling circuits includes a backup latch for storing a backup copy of the associated digital signal value, and at least one of the sampling circuits is operable to temporally sample the value of the associated digital signal at a first time and at at least one later time, and to store as a backup copy a selected one of the sampled values representing a correct value.
    Type: Grant
    Filed: February 4, 2005
    Date of Patent: July 15, 2008
    Assignees: ARM Limited, University of Michigan
    Inventors: Seokwoo Lee, Todd Michael Austin
  • Patent number: 7337356
    Abstract: An integrated circuit includes a plurality of processing stages each including processing logic 1014, a non-delayed signal-capture element 1016, a delayed signal-capture element 1018 and a comparator 1024. The non-delayed signal-capture element 1016 captures an output from the processing logic 1014 at a non-delayed capture time. At a later delayed capture time, the delayed signal-capture element 1018 also captures a value from the processing logic 1014. An error detection circuit 1026 and error correction circuit 1028 detect and correct random errors in the delayed value and supplies an error-checked delayed value to the comparator 1024. The comparator 1024 compares the error-checked delayed value and the non-delayed value and if they are not equal this indicates that the non-delayed value was captured too soon and should be replaced by the error-checked delayed value.
    Type: Grant
    Filed: July 23, 2004
    Date of Patent: February 26, 2008
    Assignees: ARM Limited, University of Michigan
    Inventors: Trevor Nigel Mudge, Todd Michael Austin, David Theodore Blaauw, Krisztian Flautner
  • Patent number: 7310755
    Abstract: An integrated circuit having a plurality of processing stages includes a low power mode controller operable to control the integrated circuit to switch between an operational mode and a standby mode. At least one of the processing stages has a non-delayed latch to capture a non-delayed value of an output signal from that processing stage and a delayed latch operable during the operational mode to capture a delayed value of the same signal. A difference between these two captured signals is indicative of the processing operation not being completed at the time the non-delayed signal was captured. The delayed latch is operable during the standby mode to retain the signal it captured whilst the non-delayed latch is powered down and loses its value. The delayed latch is formed to have a lower power consumption than the non-delayed latch.
    Type: Grant
    Filed: February 18, 2004
    Date of Patent: December 18, 2007
    Assignees: ARM Limited, University of Michigan
    Inventors: Trevor Nigel Mudge, Todd Michael Austin, David Theodore Blaauw, Krisztian Flautner
  • Patent number: 7278080
    Abstract: An integrated circuit includes a plurality of processing stages each including processing logic 2, a non-delayed latch 4, a delayed latch 8 and a comparator 6. The non-delayed latch 4 captures an output from the processing logic 2 at a non-delayed capture time. At a later delayed capture time, the delayed latch 8 also captures a value from the processing logic 2. The comparator 6 compares these values and if they are not equal this indicates that the non-delayed value was captured too soon and should be replaced by the delayed value. The non-delayed value is passed to the subsequent processing stage immediately following its capture and accordingly error recovery mechanisms are used to suppress the erroneous processing which has occurred by the subsequent processing stages, such as gating the clock and allowing the correct signal values to propagate through the subsequent processing logic before restarting the clock.
    Type: Grant
    Filed: March 20, 2003
    Date of Patent: October 2, 2007
    Assignees: ARM Limited, University of Michigan
    Inventors: Krisztian Flautner, Todd Michael Austin, David Theodore Blaauw, Trevor Nigel Mudge
  • Patent number: 7162661
    Abstract: An integrated circuit includes a plurality of processing stages each including processing logic 1014, a non-delayed signal-capture element 1016, a delayed signal-capture element 1018 and a comparator 1024. The non-delayed signal-capture element 1016 captures an output from the processing logic 1014 at a non-delayed capture time. At a later delayed capture time, the delayed signal-capture element 1018 also captures a value from the processing logic 1014. An error detection circuit 1026 and error correction circuit 1028 detect and correct random errors in the delayed value and supplies an error-checked delayed value to the comparator 1024. The comparator 1024 compares the error-checked delayed value and the non-delayed value and if they are not equal this indicates that the non-delayed value was captured too soon and should be replaced by the error-checked delayed value.
    Type: Grant
    Filed: February 18, 2004
    Date of Patent: January 9, 2007
    Assignees: ARM Limited, University of Michigan
    Inventors: Trevor Nigel Mudge, Todd Michael Austin, David Theodore Blaauw, Krisztian Flautner
  • Patent number: 7072229
    Abstract: There is provided a memory for storing data comprising: a fast data reading mechanism operable to read a data value from said memory to generate a fast read result that is output from said memory for further processing; a slow data reading mechanism operable to read said data value from said memory to generate a slow read result available after said fast read result has been output for further processing, said slow data reading mechanism being less prone to error in reading said data value than said fast data reading mechanism; a comparator operable to compare said fast read result and said slow read result to detect if said fast read result differs from said slow read result; and error repair logic operable if said comparator detects that said fast read result differs from said slow read result to suppress said further processing using said fast read result, to output said slow read result in place of said fast read result and to restart said further processing based upon said slow read result.
    Type: Grant
    Filed: June 13, 2005
    Date of Patent: July 4, 2006
    Assignees: ARM Limited, The Regents of the University of Michigan
    Inventors: Todd Michael Austin, David Theodore Blaauw, Trevor Nigel Mudge, Dennis Michael Sylvester, Krisztian Flautner
  • Patent number: 6944067
    Abstract: There is provided a memory for storing data comprising: a fast data reading mechanism operable to read a data value from said memory to generate a fast read result that is output from said memory for further processing; a slow data reading mechanism operable to read said data value from said memory to generate a slow read result available after said fast read result has been output for further processing, said slow data reading mechanism being less prone to error in reading said data value than said fast data reading mechanism a comparator operable to compare said fast read result and said slow read result to detect if said fast read result differs from said slow read result; and error repair logic operable if said comparator detects that said, fast read result differs from said slow read result to suppress said further processing using said fast read result, to output said slow read result in place of said fast read result and to restart said further processing based upon said slow read result.
    Type: Grant
    Filed: February 18, 2004
    Date of Patent: September 13, 2005
    Assignee: ARM Limited
    Inventors: Trevor Nigel Mudge, Todd Michael Austin, David Theodore Blaauw, Dennis Michael Sylvester, Krisztian Flautner
  • Publication number: 20040239397
    Abstract: There is provided an integrated circuit comprising:
    Type: Application
    Filed: February 18, 2004
    Publication date: December 2, 2004
    Applicants: ARM LIMITED, University of Michigan
    Inventors: Trevor Nigel Mudge, Todd Michael Austin, David Theodore Blaauw, Krisztian Flautner
  • Publication number: 20040243893
    Abstract: An integrated circuit includes a plurality of processing stages each including processing logic 1014, a non-delayed signal-capture element 1016, a delayed signal-capture element 1018 and a comparator 1024. The non-delayed signal-capture element 1016 captures an output from the processing logic 1014 at a non-delayed capture time. At a later delayed capture time, the delayed signal-capture element 1018 also captures a value from the processing logic 1014. An error detection circuit 1026 and error correction circuit 1028 detect and correct random errors in the delayed value and supplies an error-checked delayed value to the comparator 1024. The comparator 1024 compares the error-checked delayed value and the non-delayed value and if they are not equal this indicates that the non-delayed value was captured too soon and should be replaced by the error-checked delayed value.
    Type: Application
    Filed: February 18, 2004
    Publication date: December 2, 2004
    Applicants: ARM Limited, University of Michigan
    Inventors: Trevor Nigel Mudge, Todd Michael Austin, David Theodore Blaauw, Krisztian Flautner
  • Publication number: 20040223386
    Abstract: There is provided a memory for storing data comprising:
    Type: Application
    Filed: February 18, 2004
    Publication date: November 11, 2004
    Applicant: ARM Limited
    Inventors: Trevor Nigel Mudge, Todd Michael Austin, David Theodore Blaauw, Dennis Michael Sylvester, Krisztian Flautner
  • Publication number: 20040199821
    Abstract: An integrated circuit includes a plurality of processing stages each including processing logic 2, a non-delayed latch 4, a delayed latch 8 and a comparator 6. The non-delayed latch 4 captures an output from the processing logic 2 at a non-delayed capture time. At a later delayed capture time, the delayed latch 8 also captures a value from the processing logic 2. The comparator 6 compares these values and if they are not equal this indicates that the non-delayed value was captured too soon and should be replaced by the delayed value. The non-delayed value is passed to the subsequent processing stage immediately following its capture and accordingly error recovery mechanisms are used to suppress the erroneous processing which has occurred by the subsequent processing stages, such as gating the clock and allowing the correct signal values to propagate through the subsequent processing logic before restarting the clock.
    Type: Application
    Filed: March 20, 2003
    Publication date: October 7, 2004
    Inventors: Krisztian Flautner, Todd Michael Austin, David Theodore Blaauw, Trevor Nigel Mudge
  • Patent number: 5644709
    Abstract: A method for detecting memory access errors which occur while executing a computer program. Spatial and temporal attributes are provided for a data object and these attributes are associated with each pointer to that data object. On a dereference to a pointer, a memory access check is performed which determines (a) whether the dereference falls outside the address range within which valid accesses may be made to the data object, and (b) whether the dereference falls outside the time period within which valid accesses may be made to the data object. If the dereference falls outside the valid address range, a spatial error is flagged. If the dereference falls outside the valid time period, a temporal error is flagged. In addition, a method is described for converting a preexisting source-language program file into a safe program and a method is described for optimizing memory-access checks.
    Type: Grant
    Filed: April 21, 1994
    Date of Patent: July 1, 1997
    Assignee: Wisconsin Alumni Research Foundation
    Inventor: Todd Michael Austin