Patents by Inventor Jonathan J. Tyler

Jonathan J. Tyler 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: 10275242
    Abstract: An apparatus and method are described for real time instruction tracing. For example, a method according to one embodiment comprises: recording user specified address ranges for which tracing is required; monitoring a next linear instruction pointer (NLIP) values and/or branch linear instruction pointer (BLIP) values to determine if address range has been entered; when the range is entered, compressing the NLIP and/or BLIP values and constructing fixed length packets containing the tracing data; and transferring the fixed length packets to a memory execution cluster.
    Type: Grant
    Filed: March 30, 2012
    Date of Patent: April 30, 2019
    Assignee: Intel Corporation
    Inventors: Huy V. Nguyen, Jason W. Brandt, Jonathan J. Tyler
  • Patent number: 10007616
    Abstract: In an embodiment, an apparatus includes a cache memory and a control circuit. The control circuit may be configured to pre-fetch and store a first quantity of instruction data in response to a determination that a first pre-fetch operation request is received after a reset and prior to a first end condition. The first end condition may depend on an amount of unused storage in the cache memory. The control circuit may be further configured to pre-fetch and store a second quantity of instruction data in response to a determination that a second pre-fetch operation request is received after the first end condition. The second quantity may be less than the first quantity.
    Type: Grant
    Filed: March 7, 2016
    Date of Patent: June 26, 2018
    Assignee: Apple Inc.
    Inventors: Brett S. Feero, David J. Williamson, Jonathan J. Tyler, Mary D. Brown
  • Patent number: 9454371
    Abstract: A computer system and processor for elimination of move operations include circuits that obtain a computer instruction and bypass execution units in response to determining that the instruction includes a move operation that involves a transfer of data from a logical source register to a logical destination register. Instead of executing the move operation, the transfer of the data is performed by tracking changes in data dependencies of the source and the destination registers, and assigning a physical register associated with the source register to the destination register based on the dependencies.
    Type: Grant
    Filed: October 4, 2012
    Date of Patent: September 27, 2016
    Assignee: Intel Corporation
    Inventors: Venkateswara Madduri, Jonathan Combs, James E. Phillips, Stephen J. Robinson, James D. Allen, Jonathan J. Tyler
  • Patent number: 9003375
    Abstract: In accordance with embodiments disclosed herein, there are provided methods, systems, mechanisms, techniques, and apparatuses for implementing optional logging of debug activities in a real time instruction tracing log. For example, in one embodiment, such means may include an integrated circuit having means for initiating instruction tracing for instructions of a traced application, mode, or code region, as the instructions are executed by the integrated circuit; means for generating a plurality of packets to a debug log describing the instruction tracing; means for initiating an alternative mode of execution within the integrated circuit; and means for suppressing indication of entering the alternative mode of execution. Additional and alternative means may be implemented for selectively causing an integrated circuit to operate in accordance with an invisible trace mode or a visible trace mode upon transition to the alternative mode of execution.
    Type: Grant
    Filed: December 30, 2011
    Date of Patent: April 7, 2015
    Assignee: Intel Corporation
    Inventors: Jason W. Brandt, Peter Lachner, Huy V. Nguyen, Jonathan J. Tyler
  • Publication number: 20140068230
    Abstract: A computer system and processor for elimination of move operations include circuits that obtain a computer instruction and bypass execution units in response to determining that the instruction includes a move operation that involves a transfer of data from a logical source register to a logical destination register. Instead of executing the move operation, the transfer of the data is performed by tracking changes in data dependencies of the source and the destination registers, and assigning a physical register associated with the source register to the destination register based on the dependencies.
    Type: Application
    Filed: October 4, 2012
    Publication date: March 6, 2014
    Inventors: Venkateswara Madduri, Jonathan Combs, James E. Phillips, Stephen J. Robinson, James D. Allen, Jonathan J. Tyler
  • Publication number: 20130297917
    Abstract: An apparatus and method are described for real time instruction tracing. For example, a method according to one embodiment comprises: recording user specified address ranges for which tracing is required; monitoring a next linear instruction pointer (NLIP) values and/or branch linear instruction pointer (BLIP) values to determine if address range has been entered; when the range is entered, compressing the NLIP and/or BLIP values and constructing fixed length packets containing the tracing data; and transferring the fixed length packets to a memory execution cluster.
    Type: Application
    Filed: March 30, 2012
    Publication date: November 7, 2013
    Inventors: Huy V. Nguyen, Jason W. Brandt, Jonathan J. Tyler
  • Publication number: 20130263093
    Abstract: In accordance with embodiments disclosed herein, there are provided methods, systems, mechanisms, techniques, and apparatuses for implementing optional logging of debug activities in a real time instruction tracing log. For example, in one embodiment, such means may include an integrated circuit having means for initiating instruction tracing for instructions of a traced application, mode, or code region, as the instructions are executed by the integrated circuit; means for generating a plurality of packets to a debug log describing the instruction tracing; means for initiating an alternative mode of execution within the integrated circuit; and means for suppressing indication of entering the alternative mode of execution. Additional and alternative means may be implemented for selectively causing an integrated circuit to operate in accordance with an invisible trace mode or a visible trace mode upon transition to the alternative mode of execution.
    Type: Application
    Filed: December 30, 2011
    Publication date: October 3, 2013
    Inventors: Jason W. Brandt, Peter Lachner, Huy V. Nguyen, Jonathan J. Tyler
  • Patent number: 8346838
    Abstract: A method and apparatus for including in a processor instructions for performing integer transforms including multiply-add operations and horizontal-add operations on packed data. In one embodiment, a processor is coupled to a memory that stores a first packed byte data and a second packed byte data. The processor performs operations on said first packed byte data and said second packed byte data to generate a third packed data in response to receiving a multiply-add instruction. A plurality of the 16-bit data elements in this third packed data storing the result of performing multiply-add operations on data elements in the first and second packed byte data. The processor adds together at least a first and a second 16-bit data element of the third packed data in response to receiving an horizontal-add instruction to generate a 16-bit result as one of a plurality of data elements of a fourth packed data.
    Type: Grant
    Filed: September 15, 2009
    Date of Patent: January 1, 2013
    Assignee: Intel Corporation
    Inventors: Eric Debes, William W. Macy, Jonathan J. Tyler
  • Patent number: 7689641
    Abstract: Method, apparatus, and program means for performing a packed multiply high with round and shift operation. The method of one embodiment comprises receiving a first operand having a first set of L data elements. A second operand having a second set of L data elements is received. L pairs of data elements are multiplied together to generate a set of L products. Each of the L pairs includes a first data element from the first set of L data element and a second data element from a corresponding data element position of the second set of L data elements. Each of the L products are rounded to generate L rounded values. Each of said L rounded values are scaled to generate L scaled values. Each of the L scaled values are truncated for storage at a destination. Each truncated value is to be stored at a data element position corresponding to its pair of data elements.
    Type: Grant
    Filed: June 30, 2003
    Date of Patent: March 30, 2010
    Assignee: Intel Corporation
    Inventors: James C. Abel, Derin C. Walters, Jonathan J. Tyler
  • Publication number: 20100011042
    Abstract: A method and apparatus for including in a processor instructions for performing integer transforms including multiply-add operations and horizontal-add operations on packed data. In one embodiment, a processor is coupled to a memory that stores a first packed byte data and a second packed byte data. The processor performs operations on said first packed byte data and said second packed byte data to generate a third packed data in response to receiving a multiply-add instruction. A plurality of the 16-bit data elements in this third packed data storing the result of performing multiply-add operations on data elements in the first and second packed byte data. The processor adds together at least a first and a second 16-bit data element of the third packed data in response to receiving an horizontal-add instruction to generate a 16-bit result as one of a plurality of data elements of a fourth packed data.
    Type: Application
    Filed: September 15, 2009
    Publication date: January 14, 2010
    Inventors: Eric Debes, William W. Macy, Jonathan J. Tyler
  • Patent number: 7624138
    Abstract: A method and apparatus for including in a processor instructions for performing integer transforms including multiply-add operations and horizontal-add operations on packed data. In one embodiment, a processor is coupled to a memory that stores a first packed byte data and a second packed byte data. The processor performs operations on said first packed byte data and said second packed byte data to generate a third packed data in response to receiving a multiply-add instruction. A plurality of the 16-bit data elements in this third packed data storing the result of performing multiply-add operations on data elements in the first and second packed byte data. The processor adds together at least a first and a second 16-bit data element of the third packed data in response to receiving an horizontal-add instruction to generate a 16-bit result as one of a plurality of data elements of a fourth packed data.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: November 24, 2009
    Assignee: Intel Corporation
    Inventors: Eric Debes, William W. Macy, Jonathan J. Tyler
  • Patent number: 7430578
    Abstract: A method and apparatus for including in a processor instructions for performing multiply-add operations on packed byte data. In one embodiment, a processor is coupled to a memory. The memory has stored therein a first packed byte data and a second packed byte data. The processor performs operations on data elements in said first packed byte data and said second packed byte data to generate a third packed data in response to receiving an instruction. A plurality of the data elements in this third packed data storing the result of performing multiply-add operations on data elements in the first and second packed byte data.
    Type: Grant
    Filed: June 30, 2003
    Date of Patent: September 30, 2008
    Assignee: Intel Corporation
    Inventors: Eric Debes, William W. Macy, Jonathan J. Tyler, James Coke, Frank Binns, Scott Rodgers, Peter Ruscito, Bret Toll, Vesselin Naydenov, Masood Tahir, David Jackson
  • Patent number: 7395298
    Abstract: A method and apparatus for including in a processor instructions for performing multiply-add operations on packed data. In one embodiment, a processor is coupled to a memory. The memory has stored therein a first packed data and a second packed data. The processor performs operations on data elements in said first packed data and said second packed data to generate a third packed data in response to receiving an instruction. At least two of the data elements in this third packed data storing the result of performing multiply-add operations on data elements in the first and second packed data.
    Type: Grant
    Filed: June 30, 2003
    Date of Patent: July 1, 2008
    Assignee: Intel Corporation
    Inventors: Eric Debes, William W. Macy, Jonathan J. Tyler, Alexander D. Peleg, Millind Mittal, Larry M. Mennemeier, Benny Eitan, Carole Dulong, Eiichi Kowashi, Wolf Witt
  • Publication number: 20040267857
    Abstract: Method, apparatus, and program means for performing a packed multiply high with round and shift operation. The method of one embodiment comprises receiving a first operand having a first set of L data elements. A second operand having a second set of L data elements is received. L pairs of data elements are multiplied together to generate a set of L products. Each of the L pairs includes a first data element from the first set of L data element and a second data element from a corresponding data element position of the second set of L data elements. Each of the L products are rounded to generate L rounded values. Each of said L rounded values are scaled to generate L scaled values. Each of the L scaled values are truncated for storage at a destination. Each truncated value is to be stored at a data element position corresponding to its pair of data elements.
    Type: Application
    Filed: June 30, 2003
    Publication date: December 30, 2004
    Inventors: James C. Abel, Derin C. Walters, Jonathan J. Tyler
  • Publication number: 20040210616
    Abstract: A method and apparatus for including in a processor instructions for performing integer transforms including multiply-add operations and horizontal-add operations on packed data. In one embodiment, a processor is coupled to a memory that stores a first packed byte data and a second packed byte data. The processor performs operations on said first packed byte data and said second packed byte data to generate a third packed data in response to receiving a multiply-add instruction. A plurality of the 16-bit data elements in this third packed data storing the result of performing multiply-add operations on data elements in the first and second packed byte data. The processor adds together at least a first and a second 16-bit data element of the third packed data in response to receiving an horizontal-add instruction to generate a 16-bit result as one of a plurality of data elements of a fourth packed data.
    Type: Application
    Filed: December 30, 2003
    Publication date: October 21, 2004
    Inventors: Eric Debes, William W. Macy, Jonathan J. Tyler
  • Publication number: 20040117422
    Abstract: A method and apparatus for including in a processor instructions for performing multiply-add operations on packed data. In one embodiment, a processor is coupled to a memory. The memory has stored therein a first packed data and a second packed data. The processor performs operations on data elements in said first packed data and said second packed data to generate a third packed data in response to receiving an instruction. At least two of the data elements in this third packed data storing the result of performing multiply-add operations on data elements in the first and second packed data.
    Type: Application
    Filed: June 30, 2003
    Publication date: June 17, 2004
    Inventors: Eric Debes, William W. Macy, Jonathan J. Tyler, Alexander D. Peleg, Millind Mittal, Larry M. Mennemeier, Benny Eitan, Carole Dulong, Eiichi Kowashi, Wolf Witt
  • Publication number: 20040073589
    Abstract: A method and apparatus for including in a processor instructions for performing multiply-add operations on packed byte data. In one embodiment, a processor is coupled to a memory. The memory has stored therein a first packed byte data and a second packed byte data. The processor performs operations on data elements in said first packed byte data and said second packed byte data to generate a third packed data in response to receiving an instruction. A plurality of the data elements in this third packed data storing the result of performing multiply-add operations on data elements in the first and second packed byte data.
    Type: Application
    Filed: June 30, 2003
    Publication date: April 15, 2004
    Inventors: Eric Debes, William W. Macy, Jonathan J. Tyler, James Coke, Frank Binns, Scott Rodgers, Peter Ruscito, Bret Toll, Vesselin Naydenov, Masood Tahir, David Jackson