Patents by Inventor Nicholas G. Samra

Nicholas G. Samra 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: 8860199
    Abstract: Disclosed are a multi-die processor apparatus and system. Processor logic to execute one or more instructions is allocated among two or more face-to-faces stacked dice. The processor includes a conductive interface between the stacked dice to facilitate die-to-die communication.
    Type: Grant
    Filed: February 4, 2009
    Date of Patent: October 14, 2014
    Assignee: Intel Corporation
    Inventors: Bryan P. Black, Nicholas G. Samra, M. Clair Webb
  • Patent number: 8694976
    Abstract: Method, apparatus and system embodiments provide support for multiple SoEMT software threads on multiple SMT logical thread contexts. A sleep state mechanism maintains a current value of an element of architecture state for each physical thread. The current value corresponds to an active virtual thread currently running on the physical thread. The sleep state mechanism also maintains sleep values of the architecture state element for each inactive thread. The active and inactive values may be maintained in a cross-bar configuration. Upon a read of the architecture state element, simplified mux logic selects among the current values to provide the current value for the appropriate active thread. Upon a thread switch, control logic associated with the sleep state mechanism swaps the active state value for the current thread with the inactive state value for the new thread.
    Type: Grant
    Filed: December 19, 2003
    Date of Patent: April 8, 2014
    Assignee: Intel Corporation
    Inventor: Nicholas G. Samra
  • Patent number: 8219836
    Abstract: Methods and apparatus are disclosed to control power consumption within a processor. An example apparatus disclosed herein includes logic to identify at least one instruction type and to initialize a counter value corresponding to a maximum number of instructions to be performed, the maximum number being at least partially dependent upon the identified at least one instruction type. The example apparatus also includes processing logic to be enabled or disabled based, at least in part, on the counter value.
    Type: Grant
    Filed: June 7, 2007
    Date of Patent: July 10, 2012
    Assignee: Intel Corporation
    Inventors: Nicholas G. Samra, Andrew S. Huang, Namratha R. Jaisimha
  • Patent number: 7669203
    Abstract: Method, apparatus and system embodiments provide support for multiple SoEMT software threads on multiple SMT logical thread contexts. A thread translation table maintains physical-to-virtual thread translation information in order to provide such information to structures within a processor that utilize virtual thread information. By associating a thread translation table with such structures, a processor that supports simultaneous multithreading (SMT) may be easily retrofitted to support switch-on-event multithreading on the SMT logical processors.
    Type: Grant
    Filed: December 19, 2003
    Date of Patent: February 23, 2010
    Assignee: Intel Corporation
    Inventors: Nicholas G. Samra, Andrew S. Huang
  • Patent number: 7653904
    Abstract: A method, apparatus, and system are provided for a multi-threaded virtual state mechanism. According to one embodiment, active thread state of a first active thread is received using a virtual state mechanism, and virtual thread state is generated in accordance with the active thread state of the first active thread, and the virtual thread state corresponding to the first active thread is forwarded to state update logic.
    Type: Grant
    Filed: September 26, 2003
    Date of Patent: January 26, 2010
    Assignee: Intel Corporation
    Inventor: Nicholas G. Samra
  • Publication number: 20090138688
    Abstract: Disclosed are a multi-die processor apparatus and system. Processor logic to execute one or more instructions is allocated among two or more face-to-faces stacked dice. The processor includes a conductive interface between the stacked dice to facilitate die-to-die communication.
    Type: Application
    Filed: February 4, 2009
    Publication date: May 28, 2009
    Inventors: Bryan P. Black, Nicholas G. Samra, M. Clair Webb
  • Patent number: 7398372
    Abstract: Fusing a load micro-operation (uop) together with an arithmetic uop. Intra-instruction fusing can increase cache memory storage efficiency and computer instruction processing bandwidth within a microprocessor without incurring significant computer system cost. Uops are fused, stored in a cache memory, un-fused, executed in parallel, and retired in order to optimized cost and performance.
    Type: Grant
    Filed: June 25, 2002
    Date of Patent: July 8, 2008
    Assignee: Intel Corporation
    Inventors: Nicholas G. Samra, Stephan J. Jourdan, David J. Sager, Glenn J. Hinton
  • Patent number: 7246219
    Abstract: Methods and apparatus are disclosed to control power consumption within a processor. An example processor disclosed herein comprises an instruction retirement unit; a first set of functional blocks to process a first set of instructions having a first instruction type; a second set of functional blocks to process a second set of instructions having a second instruction type; and a controller to enable the first set of functional blocks to process an instruction allocated to the instruction retirement unit if the type of the instruction is the first type, and to disable the first set of functional blocks after the instruction is retired by the instruction retirement unit.
    Type: Grant
    Filed: December 23, 2003
    Date of Patent: July 17, 2007
    Assignee: Intel Corporation
    Inventors: Nicholas G. Samra, Andrew S. Huang, Namratha R. Jaisimha
  • Patent number: 7080236
    Abstract: A stack pointer update technique in which the stack pointer is updated without executing micro-operations to add or subtract a stack pointer value. The stack pointer update technique is also described to reset the stack pointer to a predetermined value without executing micro-operations to add or subtract stack a stack pointer value.
    Type: Grant
    Filed: September 30, 2002
    Date of Patent: July 18, 2006
    Assignee: Intel Corporation
    Inventors: Stephan J. Jourdan, Alan B. Kyker, Nicholas G. Samra
  • Patent number: 7051190
    Abstract: Fusing micro-operations (uops) together. Intra-instruction fusing can increase cache memory storage efficiency and computer instruction processing bandwidth within a microprocessor without incurring significant computer system cost. Uops are fused, stored in cache memory, un-fused, executed in parallel, and retired in order to optimize cost and performance.
    Type: Grant
    Filed: June 25, 2002
    Date of Patent: May 23, 2006
    Assignee: Intel Corporation
    Inventors: Nicholas G. Samra, Stephen J. Jourdan
  • Patent number: 6889314
    Abstract: Disclosed herein is a method for matching dependency coordinates and an efficient apparatus for performing the dependency coordinate matching very quickly. A plurality of buffers to store instructions is set forth. Each storage location of a buffer corresponds to a particular pair of dependency coordinates. Dependency matching logic receives the dependency coordinates for a buffered instruction and scheduling information pertaining to dispatched instructions. The dependency matching logic indicates whether a dependency precludes scheduling of the corresponding buffered instruction. Dependency checking logic produces a ready signal for the buffered instruction when no such dependency is indicated by the dependency matching logic.
    Type: Grant
    Filed: September 26, 2001
    Date of Patent: May 3, 2005
    Assignee: Intel Corporation
    Inventors: Nicholas G. Samra, Murali S. Chinnakonda
  • Publication number: 20040268093
    Abstract: A technique for sharing register resources within a microprocessor. Embodiments of the invention pertain to a register sharing technique within a microprocessor for multiple-threads of instructions that facilitates an optimal number of physical registers to be mapped to a desired number of logical registers without incurring significant hardware overhead.
    Type: Application
    Filed: June 26, 2003
    Publication date: December 30, 2004
    Inventors: Nicholas G. Samra, Andrew S. Huang
  • Publication number: 20040064681
    Abstract: A stack pointer update technique in which the stack pointer is updated without executing micro-operations to add or subtract a stack pointer value. The stack pointer update technique is also described to reset the stack pointer to a predetermined value without executing micro-operations to add or subtract stack a stack pointer value.
    Type: Application
    Filed: September 30, 2002
    Publication date: April 1, 2004
    Inventors: Stephan J. Jourdan, Alan B. Kyker, Nicholas G. Samra
  • Publication number: 20030236966
    Abstract: Fusing a load micro-operation (uop) together with an arithmetic uop. Intra-instruction fusing can increase cache memory storage efficiency and computer instruction processing bandwidth within a microprocessor without incurring significant computer system cost. Uops are fused, stored in a cache memory, un-fused, executed in parallel, and retired in order to optimized cost and performance.
    Type: Application
    Filed: June 25, 2002
    Publication date: December 25, 2003
    Inventors: Nicholas G. Samra, Stephan J. Jourdan, David J. Sager, Glenn J. Hinton
  • Publication number: 20030236967
    Abstract: Fusing micro-operations (uops) together. Intra-instruction fusing can increase cache memory storage efficiency and computer instruction processing bandwidth within a microprocessor without incurring significant computer system cost. Uops are fused, stored in cache memory, un-fused, executed in parallel, and retired in order to optimize cost and performance.
    Type: Application
    Filed: June 25, 2002
    Publication date: December 25, 2003
    Inventors: Nicholas G. Samra, Stephan J. Jourdan
  • Patent number: 6560671
    Abstract: An apparatus, system and method for accelerating exchange (XCHG) instructions in a processor using a register alias table (RAT) data array and a content addressable memory (CAM) to handle register renaming. The RAT has at least one read port, at least one write port, and a plurality of address entries. The CAM has at least one read address, at least one write address, and a plurality of swap addresses. A plurality of logical register numbers are used as CAM input addresses to the RAT, and the operation of the CAM is completed in a first phase and a second phase of a clock cycle. The logical register numbers that match a pair of input swap addresses are interchanged.
    Type: Grant
    Filed: September 11, 2000
    Date of Patent: May 6, 2003
    Assignee: Intel Corporation
    Inventors: Nicholas G. Samra, Jacob Doweck
  • Publication number: 20030061466
    Abstract: Disclosed herein is a method for matching dependency coordinates and an efficient apparatus for performing the dependency coordinate matching very quickly. A plurality of buffers to store instructions is set forth. Each storage location of a buffer corresponds to a particular pair of dependency coordinates. Dependency matching logic receives the dependency coordinates for a buffered instruction and scheduling information pertaining to dispatched instructions. The dependency matching logic indicates whether a dependency precludes scheduling of the corresponding buffered instruction. Dependency checking logic produces a ready signal for the buffered instruction when no such dependency is indicated by the dependency matching logic.
    Type: Application
    Filed: September 26, 2001
    Publication date: March 27, 2003
    Inventors: Nicholas G. Samra, Murali S. Chinnakonda
  • Patent number: 6519683
    Abstract: The present invention is directed to a system and method for implementing a re-ordered instruction cache. In one embodiment, groups or “packets” of instructions with specific packet sizes are formed. Each of packets includes two or more positions. The two or more positions are defined such that they support one or more different types of instructions. Each of the positions are also correlated to a subset of the specialized execution units of the processor. Given a specific packet size and definitions for each of the positions, each of the instructions are re-ordered according to instruction type and loaded into the instruction cache in the new order.
    Type: Grant
    Filed: December 29, 2000
    Date of Patent: February 11, 2003
    Assignee: Intel Corporation
    Inventors: Nicholas G. Samra, Bradley G. Burgess
  • Patent number: 6470435
    Abstract: An embodiment of the present invention includes a speculative rename table (SRT), a shadow array, and an update circuit. The SRT stores mapping of frequent and infrequent registers. The frequent registers are frequently modified by instructions dispatched from a processor core. The infrequent registers are infrequently modified by the instructions. The shadow array stores shadow registers. Each of the shadow registers contains a rename state of a corresponding frequent register after a branch instruction. The update circuit transfers contents of the shadow registers to the frequent registers based on a selection condition.
    Type: Grant
    Filed: December 28, 2000
    Date of Patent: October 22, 2002
    Assignee: Intel Corporation
    Inventors: Nicholas G. Samra, Jacob Doweck, Belliappa Kuttanna
  • Publication number: 20020124158
    Abstract: An apparatus and method for efficiently generating a zero value may be used with instruction set architectures which do not support an explicit zero reading register (r0) to speed execution. The present invention includes a physical register that reads out a value of zero when accessed, and a Zero Instruction Logic (ZIL) unit that identifies instructions that appear to be compensating for the lack of an r0 register, and modify the stream of instructions to utilize the physical register. Embodiments of the present invention may decrease the number of instructions that must be executed, and may decrease false dependencies between instructions allowing more scheduling flexibility.
    Type: Application
    Filed: December 28, 2000
    Publication date: September 5, 2002
    Inventor: Nicholas G. Samra