Patents by Inventor Robert Nuckolls

Robert Nuckolls 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: 20160070803
    Abstract: A conceptual product recommendation service that allows users to define the parameters that drive a search for one or more target products as a concept that can be specified in a variety of different ways, ranging from the specification of an abstract or generic idea to the specification of a particular instance of a product that embodies one or more conceptual elements sought by the user. In the process of matching the user-specified concept to a set of target products, the conceptual product recommendation service compares a word vector based representation of a multi-document compilation relating to the user-specified concept to respective word vector based representations of multi-document compilations relating to the target products to produce respective match scores corresponding to degrees of match between the user-specified concept and the target products.
    Type: Application
    Filed: September 9, 2014
    Publication date: March 10, 2016
    Inventor: Robert Nuckolls
  • Patent number: 7191316
    Abstract: A system for handling a plurality of single precision floating point instructions and a plurality of double precision floating point instructions that both index a same set of registers is provided. The system comprises a decode unit arranged to decode, stall, and forward at least one of the plurality of single precision and at least one of the plurality of double precision floating point instructions in a fetch group. The decode unit includes a first counter arranged to increment for each of the plurality of single precision floating point instructions forwarded down a pipeline; a second counter arranged to increment for each of the plurality of double precision floating point instructions forwarded down the pipeline; a first mask register and a second mask register. The first mask register is updated by each of the single precision floating point instructions forwarded and the second mask register is updated by each of the double precision floating point instructions forwarded.
    Type: Grant
    Filed: January 29, 2003
    Date of Patent: March 13, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Rabin A. Sugumar, Sorin Iacobovici, Robert Nuckolls, Chandra M. R. Thimmannagari
  • Patent number: 7080237
    Abstract: A technique for flattening architectural register windows into flattened space depending on a current window pointer to a register window is provided. The technique involves converting an n-bit value of a particular register in a register window to an x-bit value dependent on the current window pointer, where x is greater than n, and where the x-bit value is used for register dependency checking among a plurality of instructions.
    Type: Grant
    Filed: May 24, 2002
    Date of Patent: July 18, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Chandra M. R. Thimmannagari, Sorin Iacobovici, Rabin A. Sugumar, Robert Nuckolls
  • Patent number: 7035999
    Abstract: A register window fill technique for a retirement window having an entry size less than a number of fill instructions used in a fill condition is provided. The technique uses modified fill instructions that allow the retirement window to retire a portion of the fill instructions without having to determine whether a remaining portion of the fill instructions will execute without exceptions.
    Type: Grant
    Filed: June 7, 2002
    Date of Patent: April 25, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Chandra Thimmanagari, Sorin Iacobovici, Rabin Sugumar, Robert Nuckolls
  • Patent number: 7024541
    Abstract: A register window spill technique for an retirement window having an entry size less than a number of spill instructions used in a spill condition is provided. The technique uses modified spill instructions that allow the retirement window to retire a portion of the spill instructions without having to determine whether a remaining portion of the spill instructions will execute without exceptions.
    Type: Grant
    Filed: June 7, 2002
    Date of Patent: April 4, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Chandra Thimmanagari, Sorin Iacobovici, Rabin Sugumar, Robert Nuckolls
  • Publication number: 20040199749
    Abstract: A method for limiting a number of register file read ports used to process a store instruction includes decoding the store instruction, where the decoding generates a decoded store instruction, identifying a store data register and source operand registers included in the decoded store instruction, and appending a set of attribute fields to the decoded store instruction. Further, dependent on a value of at least one of the attribute fields, source values corresponding to the source operand registers are read using the register file read ports at a time that the store instruction is issued, and a store data value corresponding to the store data register is read using one of the register file read ports at a time that the store instruction is committed.
    Type: Application
    Filed: April 3, 2003
    Publication date: October 7, 2004
    Inventors: Robert Golla, Chandra M. R. Thimmannagari, Sorin Iacobovici, Rabin A. Sugumar, Robert Nuckolls
  • Publication number: 20040181651
    Abstract: A multi-issue microprocessor selectively assigns, with particular emphasis on an particular type of instruction, in a plurality of instructions to various pipelines. The microprocessor maintains counts of the number of instructions assigned to a first pipeline and a second pipeline. Depending on these counts, the processor assigns instructions of the particular type in the plurality of instructions to the first and second pipelines.
    Type: Application
    Filed: March 11, 2003
    Publication date: September 16, 2004
    Inventors: Rabin A. Sugumar, Chandra M.R. Thimmannagari, Sorin Lacobovici, Robert Nuckolls
  • Publication number: 20040162972
    Abstract: A method for handling a control transfer instruction couple includes fetching a plurality of instructions. The plurality of instructions include a control transfer instruction couple (or CTI couple), which includes a first branch instruction and a second branch instruction, leading instructions that precede the first branch instruction, trailing instructions that follow the second branch instruction, and buffered instructions that follow the trailing instructions. The method further includes decoding the CTI couple, forwarding the leading instructions and the first branch instruction for processing, freezing the trailing instructions and the delay slot to obtain frozen instructions, buffering the buffered instructions fetched after the freezing, and initiating an instruction refetch cycle dependent on a prediction of an execution of the first branch instruction.
    Type: Application
    Filed: February 18, 2003
    Publication date: August 19, 2004
    Inventors: Sorin Iacobovici, Rabin A. Sugumar, Chandra M. R. Thimmannagari, Robert Nuckolls, Suresh Thirumalaiswamy
  • Publication number: 20040148492
    Abstract: A system for handling a plurality of single precision floating point instructions and a plurality of double precision floating point instructions that both index a same set of registers is provided. The system comprises a decode unit arranged to decode, stall, and forward at least one of the plurality of single precision and at least one of the plurality of double precision floating point instructions in a fetch group. The decode unit includes a first counter arranged to increment for each of the plurality of single precision floating point instructions forwarded down a pipeline; a second counter arranged to increment for each of the plurality of double precision floating point instructions forwarded down the pipeline; a first mask register and a second mask register. The first mask register is updated by each of the single precision floating point instructions forwarded and the second mask register is updated by each of the double precision floating point instructions forwarded.
    Type: Application
    Filed: January 29, 2003
    Publication date: July 29, 2004
    Inventors: Rabin A. Sugumar, Sorin Iacobovici, Robert Nuckolls, Chandra M. R. Thimmannagari
  • Publication number: 20040148497
    Abstract: A method for determining a reifetch address of a branch instruction in a set of instructions involves decoding the set of instructions, forwarding the set of instructions along with a value of a branch counter, updating the branch counter based on the set of instructions, and predicting a result of executing the branch instruction in the set of instructions. If mispredicted, a source address of the branch instruction is calculated. The calculating involves shifting the value of the branch counter dependent on a shift value to generate a shifted value of the branch counter, and adding a working copy of the program counter or next program counter and the shifted value of the branch counter to generate the source address which is in turn used to determine the reifetch address.
    Type: Application
    Filed: January 27, 2003
    Publication date: July 29, 2004
    Inventors: Ali Vahidsafa, Robert Nuckolls, Sorin Iacobovici, Rabin Sugumar, Suresh Thirumalaiswamy, Chandra Mohan Reddy Thimmannagari
  • Publication number: 20040148496
    Abstract: A method for handling a conditional move instruction using a two read port per issue slot register file, where the conditional move instruction references a first register, a second register, and a third register is provided. The method involves decoding a conditional move instruction, invoking at least two helper instructions dependent on the decoding, evaluating a register condition of the first register using a first helper instruction, and updating the third register with the contents of either the second register third register dependent on the evaluating using a second helper instruction.
    Type: Application
    Filed: January 27, 2003
    Publication date: July 29, 2004
    Inventors: Chandra Mohan Reddy Thimmannagari, Yoganand Chillarige, Sorin Lacobovici, Rabin A. Sugumar, Robert Nuckolls
  • Publication number: 20040128476
    Abstract: A method and apparatus for processing instructions involves an instruction fetch unit arranged to receive a plurality of instructions. The instruction fetch unit includes a bypass buffer arranged to receive at least a portion of a plurality of instructions, and an output multiplexer arranged to receive the at least a portion of the plurality of instructions where the output multiplexer is arranged to output an instruction selected from one of an output of the bypass buffer and the at least a portion of the plurality of instructions.
    Type: Application
    Filed: December 26, 2002
    Publication date: July 1, 2004
    Inventors: Robert Nuckolls, Sorin Iacobovici, Rabin A. Sugumar, Chandra M. R. Thimmannagari
  • Publication number: 20040128488
    Abstract: A method and apparatus for avoiding strand starvation is provided. The method and apparatus selectively switches from a first strand to a second strand dependent on a state of a computer system. The selectively switching is dependent on whether the second strand is alive and whether a value of a counter has reached a particular count.
    Type: Application
    Filed: December 26, 2002
    Publication date: July 1, 2004
    Inventors: Chandra M. R. Thimmannagari, Rabin A. Sugumar, Sorin Iacobovici, Robert Nuckolls
  • Publication number: 20040044881
    Abstract: In an embodiment, the present invention describes a method and apparatus for detecting RAW condition earlier in an instruction pipeline. The store instructions are stored in a special store bypass buffer (SBB) within an instruction decode unit (IDU). The IDU compares the instruction fields that are used for address generation of all ‘load’ instructions against ‘store’ instructions within a group of fetched instructions and ‘store’ instructions previously stored in the SBB. If a match of instruction fields is found, the IDU ‘speculates’ that the load instruction has dependency on the ‘store’ instruction. A data cache unit (DCU) validates the dependency of the load instruction ‘speculated’ by the IDU. If a false dependency is ‘speculated’ by the IDU, the DCU forces a re-fetch of the load instruction.
    Type: Application
    Filed: August 28, 2002
    Publication date: March 4, 2004
    Applicant: Sun Microsystems, Inc.
    Inventors: Robert M. Maier, Sorin Iacobovici, Rabin Sugumar, Robert Nuckolls, Ali Vahidsafa, Chandra M. R. Thimmannagari
  • Publication number: 20030229772
    Abstract: A register window fill technique for a retirement window having an entry size less than a number of fill instructions used in a fill condition is provided. The technique uses modified fill instructions that allow the retirement window to retire a portion of the fill instructions without having to determine whether a remaining portion of the fill instructions will execute without exceptions.
    Type: Application
    Filed: June 7, 2002
    Publication date: December 11, 2003
    Inventors: Chandra Thimmanagari, Sorin Iacobovici, Rabin Sugumar, Robert Nuckolls
  • Publication number: 20030229771
    Abstract: A register window spill technique for an retirement window having an entry size less than a number of spill instructions used in a spill condition is provided. The technique uses modified spill instructions that allow the retirement window to retire a portion of the spill instructions without having to determine whether a remaining portion of the spill instructions will execute without exceptions.
    Type: Application
    Filed: June 7, 2002
    Publication date: December 11, 2003
    Inventors: Chandra Thimmanagari, Sorin Iacobovici, Rabin Sugumar, Robert Nuckolls
  • Publication number: 20030221088
    Abstract: A technique for flattening architectural register windows into flattened space depending on a current window pointer to a register window is provided. The technique involves converting an n-bit value of a particular register in a register window to an x-bit value dependent on the current window pointer, where x is greater than n, and where the x-bit value is used for register dependency checking among a plurality of instructions.
    Type: Application
    Filed: May 24, 2002
    Publication date: November 27, 2003
    Inventors: Chandra Thimmanagari, Sorin Iacobovici, Rabin Sugumar, Robert Nuckolls