Patents by Inventor Adi Yoaz

Adi Yoaz 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: 6625723
    Abstract: A computer architecture for collapsing dependency graphs for colliding store and load instructions. Many-to-one mappings are provided between logical registers and physical registers, so that more than one logical register may map to the same physical register. For a load instruction that is predicted to collide with an earlier in-flight store instruction, the destination logical register of the load instruction is mapped to the same physical register to which the source logical register of the earlier in-flight store instruction is mapped. A many-to-one mapping may be realized by associating a counter with each physical register, so that the value of a counter indicates whether its associated physical counter is free.
    Type: Grant
    Filed: July 7, 1999
    Date of Patent: September 23, 2003
    Assignee: Intel Corporation
    Inventors: Stephen J. Jourday, Adi Yoaz, Ronny Ronen, Michael Bekerman
  • Publication number: 20030154362
    Abstract: The present invention is directed to an apparatus and method for data collapsing based on control-flow speculation (conditional branch predictions). Because conditional branch outcomes are resolved based on actual data values, the conditional branch prediction provides potentially valuable insight into data values. Upon encountering a branch if equal instruction and this instruction is predicted as taken or a branch if not equal instruction and this instruction is predicted as not taken, this invention assumes that the two operands used to determine the conditional branch are equal. The data predictions are safe because a data misprediction means a conditional branch misprediction which results in a pipeline flush of the instructions following the conditional branch instruction including the data mispredictions.
    Type: Application
    Filed: December 2, 2002
    Publication date: August 14, 2003
    Inventors: Stephan J. Jourdan, Freddy Gabbay, Ronny Ronen, Adi Yoaz
  • Publication number: 20030065908
    Abstract: A method and apparatus for dual-target register allocation is described, intended to enable the efficient mapping/renaming of registers associated with instructions within a pipelined microprocessor architecture.
    Type: Application
    Filed: September 28, 2001
    Publication date: April 3, 2003
    Inventors: Rajesh Patel, James Dundas, Adi Yoaz
  • Publication number: 20030051099
    Abstract: A memory cache bank prediction unit is provided for use in a processor having a plurality of memory cache banks. The memory cache bank prediction unit has an input port that receives an instruction. The memory cache bank prediction unit also has an evaluation unit, coupled to the input port, that predicts which of the plurality of memory cache banks is associated with the instruction.
    Type: Application
    Filed: December 29, 1999
    Publication date: March 13, 2003
    Inventors: ADI YOAZ, RONNY RONEN, LIHU RAPPOPORT, MATTAN EREZ, STEPHEN J. JOURDAN, BOB VALENTINE
  • Patent number: 6516405
    Abstract: The present invention is directed to an apparatus and method for data collapsing based on control-flow speculation (conditional branch predictions). Because conditional branch outcomes are resolved based on actual data values, the conditional branch prediction provides potentially valuable insight into data values. Upon encountering a branch if equal instruction and this instruction is predicted as taken or a branch if not equal instruction and this instruction is predicted as not taken, this invention assumes that the two operands used to determine the conditional branch are equal. The data predictions are safe because a data misprediction means a conditional branch misprediction which results in a pipeline flush of the instructions following the conditional branch instruction including the data mispredictions.
    Type: Grant
    Filed: December 30, 1999
    Date of Patent: February 4, 2003
    Assignee: Intel Corporation
    Inventors: Stephan J. Jourdan, Freddy Gabbay, Ronny Ronen, Adi Yoaz
  • Patent number: 6505293
    Abstract: A processor architecture for providing many-to-one mappings between logical registers and physical registers, so that more than one logical register may map to the same physical register. Each physical register has an associated counter to indicate whether the physical register is free. A counter is incremented each time a mapping is made to its associated physical register, and is decremented when that mapping is no longer needed. If a logical register named in a decoded instruction is predicted to have the same value as a value stored in a physical register, then the logical register is mapped to the physical register.
    Type: Grant
    Filed: July 7, 1999
    Date of Patent: January 7, 2003
    Assignee: Intel Corporation
    Inventors: Stephan J. Jourdan, Ronny Ronen, Adi Yoaz
  • Publication number: 20020178346
    Abstract: A method of executing instructions in an instruction window including the following actions. Examining the first and second instructions to determine the sources and destinations of the first and second instructions. Setting a written on bit of the first instruction to written on if the destinations of the first and second instructions are the same. Setting a used bit of the first instruction to used if the source of the second instruction is the destination of the first instruction. Determining a priority of the first instruction from the written on and used bits.
    Type: Application
    Filed: March 30, 2001
    Publication date: November 28, 2002
    Inventors: George Elias, Adi Yoaz, Ronny Ronen
  • Publication number: 20020144090
    Abstract: A method for renaming a source for use with a processor, the method including providing an instruction, building instruction dependency information based on the instruction, caching the instruction based on the instruction dependency information to provide a cached instruction, renaming a register based on the cached instruction to provide a renamed register, and multiplexing the instruction dependency information and the renamed register to rename the source.
    Type: Application
    Filed: March 30, 2001
    Publication date: October 3, 2002
    Inventors: Ronny Ronen, Adi Yoaz, Gregory Pribush
  • Publication number: 20020124156
    Abstract: An electronic device including a predictor that has a collision history table (CHT) is presented. An extended load buffer is connected to the predictor. Also included is a marking unit, a comparing unit and a recovery unit connected to the extended load buffer. Unexecuted load instructions are advanced over store instructions. Also presented is a method for fetching an instruction and determining if an instruction is a store or a load. If the instruction is a store, then the method performs a silent store prediction. If the instruction is a load, a predicted silent store instruction is bypassed and the load instruction is executed.
    Type: Application
    Filed: December 29, 2000
    Publication date: September 5, 2002
    Inventors: Adi Yoaz, Ronny Ronen, Rajesh Patel
  • Publication number: 20020087852
    Abstract: A branch predicting apparatus is disclosed that reduces branch mispredictions in a processor. The branch prediction apparatus includes a base misprediction history register. The branch prediction apparatus includes a meta predictor that receives an index value and a branch prediction to generate a misprediction value in accordance with the base misprediction history register. The branch prediction apparatus also includes a logic gate that receives the branch prediction and the misprediction value to generate a final prediction. The final prediction may be used to predict whether a branch is taken or not taken.
    Type: Application
    Filed: December 28, 2000
    Publication date: July 4, 2002
    Inventors: Stephan J. Jourdan, Adi Yoaz, Mattan Erez, Ronny Ronen
  • Patent number: 6134643
    Abstract: A microprocessor includes an execution engine, a prediction table cache, and a prefetch controller. The execution engine is adapted to issue a memory request. The memory request includes an identifier corresponding to a row location in an external main memory. The prediction table cache is adapted to store a plurality of entries defining an access history of previously encountered memory requests. The prediction table cache is indexed by the identifier. The prefetch controller is adapted to receive the memory request and generate at least one prefetch candidate based on the memory request and the access history. A method for prefetching data in a microprocessor includes receiving a memory request. The memory request includes an identifier corresponding to a row location in an external main memory. The memory request is compared to an access history of previously encountered memory requests. The access history is indexed by the identifier.
    Type: Grant
    Filed: November 26, 1997
    Date of Patent: October 17, 2000
    Assignee: Intel Corporation
    Inventors: Gershon Kedem, Ronny Ronen, Adi Yoaz
  • Patent number: 5987595
    Abstract: The invention in several embodiments includes an apparatus and a method for predicting whether store instructions can be safely executed out-of-order. The apparatus, includes at least one execution unit, a reorder buffer adapted to holding a plurality of instructions from an instruction sequence for execution by the execution units, and a memory storage device adapted to holding a collision history table. The collision history table has entries for load instructions of the instruction sequence Each of the entries is adapted to predicting when the associated load instruction is colliding.
    Type: Grant
    Filed: November 25, 1997
    Date of Patent: November 16, 1999
    Assignee: Intel Corporation
    Inventors: Adi Yoaz, Ronny Ronen, Robert C. Valentine
  • Patent number: 5838941
    Abstract: An advanced register renamer comprises an associative memory having a plurality of entries, each entry storing a representation of a single operation as an expression paired with a corresponding name. The expression and the name are respectively stored in first and second fields of an entry in the memory. Both fields are available for subsequent assembly level operations to use as pattern matches. A means for converting a subsequent operation in the stream to a new operation searches for a match between an expression of the subsequent operation and the first field of a matching entry. Upon finding a match with the expression field in the table, the subsequent operation is renamed to a new operation by replacing the expression with the corresponding name field of the matching entry taken from the associative memory.
    Type: Grant
    Filed: December 30, 1996
    Date of Patent: November 17, 1998
    Assignee: Intel Corporation
    Inventors: Robert C. Valentine, Gad S. Sheaffer, Ronny Ronen, Ilan Spillinger, Adi Yoaz
  • Patent number: 5822788
    Abstract: A computer system provides enhanced performance when executing irregular code that include pointer de-reference operations. A memory controller of the computer system first fetches a pointer value from an address location in the memory and then calculates a new address adding a constant or scale factor to the pointer value. A logical-to-physical (i.e., virtual-to-physical) translation of the pointer value is also performed. The loading of data for the initial pointer load operation is overlapped with the de-reference operation, wherein the de-reference data is prefetched from memory using the resulting address and placed into the CPU's cache.
    Type: Grant
    Filed: December 20, 1996
    Date of Patent: October 13, 1998
    Assignee: Intel Corporation
    Inventors: Opher D. Kahn, Ilan Y. Spillinger, Adi Yoaz