Patents by Inventor Tse-Yu Yeh

Tse-Yu Yeh 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: 6430674
    Abstract: A method and apparatus for transitioning a processor from a first mode of operation for processing a first instruction set architecture (instruction set) to a second mode of operation for processing a second set instruction set. The method provides that instructions of a first instruction set architecture (instruction set) are processed in a pipelined processor in a first mode of operation, and instructions of a second, different, instruction set, are processed in the pipelined processor in a second, different, mode of operation. While operating in one mode and before a switch to the other mode occurs, the pipeline is loaded with a set of instructions that transition the processor from one mode to the other, wherein the set of instructions are substantially insensitive to the mode that the processor operates in.
    Type: Grant
    Filed: December 30, 1998
    Date of Patent: August 6, 2002
    Assignee: Intel Corporation
    Inventors: Jignesh Trivedi, Tse-Yu Yeh
  • Patent number: 6427206
    Abstract: A microprocessor is disclosed. The microprocessor includes a branch prediction table that has at least one branch entry. The at least one branch entry includes a prediction field to indicate whether a branch is predicted taken. The at least one branch entry also includes a history register that stores history information. Moreover, the branch prediction table includes a prediction update logic that updates the prediction field and the history register except when a branch is strongly predicted statically.
    Type: Grant
    Filed: May 3, 1999
    Date of Patent: July 30, 2002
    Assignee: Intel Corporation
    Inventors: Tse-Yu Yeh, Mitchell Alexander Poplingher, Monis Rahman
  • Publication number: 20020095566
    Abstract: A branch operation is processed using a branch predict instruction and an associated branch instruction. The branch predict instruction indicates a predicted direction, a target address, and an instruction address for the associated branch instruction. When the branch predict instruction is detected, the target address is stored at an entry indicated by the associated branch instruction address and a prefetch request is triggered to the target address. The branch predict instruction may also include hint information for managing the storage and use of the branch prediction information.
    Type: Application
    Filed: October 12, 1998
    Publication date: July 18, 2002
    Inventors: HARSHVARDHAN SHARANGPANI, TSE-YU YEH, MICHAEL PAUL CORWIN, MILLAND MITTAL, KENT FIELDEN, DALE MORRIS
  • Publication number: 20020083310
    Abstract: A loop branch prediction system is provided to predict a final iteration of a loop and resteer an associated fetch module to an appropriate target address. The loop prediction system includes a counter and an end of loop (EOL) module. In one mode, the counter tracks loop branches in process. When a termination condition is detected, the counter switches to a second mode to track the number of loop branches still to be issued. The EOL module compares the number of loop branches still to be issued with one or more threshold values and generates a resteer signal when a match is detected.
    Type: Application
    Filed: October 12, 1998
    Publication date: June 27, 2002
    Inventors: DALE MORRIS, MIRCEA POPLINGHER, TSE-YU YEH, MICHAEL PAUL CORWIN, WENLIANG CHEN
  • Patent number: 6353805
    Abstract: An apparatus and method for cycle accounting for a microprocessor are disclosed, in which a performance monitor includes a plurality of silos, a prioritizer, and a combiner. The silos receive delay reason signals from the main processor pipeline, and output staged signals. The prioritizer receives the staged signals, and outputs a plurality of prioritized signals. The combiner selectively combines various of the prioritize signals, and provides signals indicative of microprocessor performance. Each silo includes, in series, a plurality of stages, with each stage containing a single latch. The stages of the silo are synchronized with the stages of the main processor pipeline. The performance monitor operates in real-time, at the same frequency as the microprocessor, and in parallel to the main processor pipeline, and correctly accounts for buffering effects of decoupling buffers.
    Type: Grant
    Filed: April 7, 1998
    Date of Patent: March 5, 2002
    Assignee: Intel Corporation
    Inventors: Achmed R. Zahir, Vincent E. Hummel, Ralph M. Kling, Tse-Yu Yeh
  • Publication number: 20010047467
    Abstract: A branch predictor. A first branch prediction table is coupled to an instruction pointer generator to store tagged branch prediction entries and to provide branch predictions at high speed.
    Type: Application
    Filed: September 8, 1998
    Publication date: November 29, 2001
    Inventors: TSE-YU YEH, HARSHVARDHAN P. SHARANGPANI
  • Patent number: 6304960
    Abstract: A system for validating branch predictions for clusters of branch instructions includes an address validation module and a condition validation module. The address validation module determines target addresses for the branches in the cluster. One of the determined target addresses is selected, using predicted branch directions. The selected target address is compared with a predicted target address, and resolved branch directions are compared with predicted branch directions. A misprediction is indicated if either comparison fails.
    Type: Grant
    Filed: August 6, 1998
    Date of Patent: October 16, 2001
    Assignee: Intel Corporation
    Inventors: Tse-Yu Yeh, Michael Paul Corwin, Judge K. Arora, Sujat Jamil, Sailesh Kottapalli
  • Patent number: 6282636
    Abstract: A decentralized exception processing system includes a plurality of local exception units. Each local exception unit is coupled to process local exception signals from one or more processing resources that are proximate to it. Each local exception unit generates local commit signals, using order information for the instruction in an issue group and any local exception signals it receives. The local commit signals are combined to generate a global commit signal for each instruction in the issue group. Local exception signals are collected at a selected one of the local exception units and processed to generate a global exception unit. The selected local exception unit resteers control of the processing resources to an exception handler associated with the global exception unit.
    Type: Grant
    Filed: December 23, 1998
    Date of Patent: August 28, 2001
    Assignee: Intel Corporation
    Inventors: Tse-Yu Yeh, Gregory Mathews, Steven Tu
  • Patent number: 6253315
    Abstract: A processor pipeline includes a return stack buffer (RSB) and a top of stack pointer (RSB_TOS) to indicate the status of buffer entries. A copy of the current RSB_TOS (C_TOS) is associated with each branch instruction that is detected at the front end of the pipeline. When the branch instruction is a call instruction that is predicted taken, an associated return address is pushed onto the RSB and the current RSB_TOS is updated. When the branch instruction is a return instruction that is predicted taken, the return address indicated by the current RSB_TOS pointer is popped from the RSB and the current RSB_TOS is updated. When a branch is determined to have been mispredicted, the associated C_TOS is adjusted according to the type of branch misprediction and RSB_TOS is updated with the adjusted C_TOS.
    Type: Grant
    Filed: August 6, 1998
    Date of Patent: June 26, 2001
    Assignee: Intel Corporation
    Inventor: Tse-Yu Yeh
  • Patent number: 6240510
    Abstract: A system is provided for processing concurrently one or more branch instructions in an instruction bundle. The system includes multiple branch execution pipelines, each capable of executing a branch instruction to determine a branch direction, target address, and any side effects. Linking logic receives the resolved branch information and identifies a first branch instruction in execution order for which the branch direction is taken.
    Type: Grant
    Filed: August 6, 1998
    Date of Patent: May 29, 2001
    Assignee: Intel Corporation
    Inventors: Tse-Yu Yeh, Harshvardhan Sharangpani, Michael Paul Corwin, Sujat Jamil
  • Patent number: 6237077
    Abstract: A method for processing one or more branch instructions in an instruction bundle is provided. The instructions are ordered in an execution sequence within the bundle, with the branch instructions ordered last in the sequence. The bundled instructions are transferred to execution units indicated by a template field that is associated with the bundle. The first branch instruction in the bundle's execution sequence that is resolved taken is determined, and retirement of subsequent instructions in the execution sequence is suppressed.
    Type: Grant
    Filed: October 13, 1997
    Date of Patent: May 22, 2001
    Assignee: Idea Corporation
    Inventors: Harshvardhan Sharangpani, Michael Paul Corwin, Dale Morris, Kent Fielden, Tse-Yu Yeh, Hans Mulder, James Hull
  • Patent number: 6212603
    Abstract: A processor prefetches instructions in a pipelined manner from a first (L1) cache to a local instruction cache, with an instruction pointer device being utilized to select one of a plurality of incoming addresses for fetching purposes. Instructions returned from the L1 cache are stored in an instruction streaming buffer before they are actually written into the instruction cache. A way multiplexer outputs instructions to dispersal logic in the processor, and is fed by either the local cache or a bypass path that provides the instruction to the way multiplexer from a plurality of bypass sources, which includes the instruction streaming buffer. A request address buffer registers physical and virtual addresses associated with an instruction of a miss request by the processor to the L1 cache. Each entry of the request address buffer has an ID that is sent to the L1 cache with the miss request.
    Type: Grant
    Filed: April 9, 1998
    Date of Patent: April 3, 2001
    Assignee: Institute for the Development of Emerging Architectures, L.L.C.
    Inventors: Rory McInerney, Eric Sindelar, Tse-Yu Yeh
  • Patent number: 6185676
    Abstract: A pipelined microprocessor having a branch prediction unit implemented in an instruction pointer generation stage of the microprocessor. The branch prediction unit includes a memory device having at least a first entry configured to hold at least a part of a memory address of a pre-selected branch instruction and at least a part of a memory address of a branch target corresponding to the pre-selected branch instruction. The branch prediction unit compares an instruction pointer of an instruction to be executed with the memory address of the pre-selected branch instruction. In response to a match between the instruction pointer and the memory address of pre-selected branch instruction, the unit causes the microprocessor to fetch an instruction corresponding to the branch target. In one embodiment, the instruction pointer generation stage of the microprocessor is implemented as a first stage of the pipelined microprocessor.
    Type: Grant
    Filed: September 30, 1997
    Date of Patent: February 6, 2001
    Assignee: Intel Corporation
    Inventors: Mitchell Alexander Poplingher, Carl Scafidi, Tse-Yu Yeh, Wenliang Chen
  • Patent number: 6092188
    Abstract: A processor architecture with an instruction set having a predict instruction, the predict instruction providing static prediction information and a statically predicted target address to the processor for a branch instruction. The processor decodes a predict instruction to obtain an associated pair of addresses comprising a predicted target address and a referenced instruction address, and fetches a predicted target instruction having an instruction address matching the predicted target address when a fetched and decoded branch instruction has an instruction address matching the referenced instruction address.
    Type: Grant
    Filed: July 7, 1999
    Date of Patent: July 18, 2000
    Assignee: Intel Corporation
    Inventors: Michael P. Corwin, Tse-Yu Yeh, Mircea Poplingher, Carl C. Scafidi
  • Patent number: 6052802
    Abstract: An apparatus and method for cycle accounting for a microprocessor are disclosed, in which a performance monitor includes a plurality of silos, a prioritizer, and a combiner. The silos receive delay reason signals from the main processor pipeline, and output staged signals. The prioritizer receives the staged signals, and outputs a plurality of prioritized signals. The combiner selectively combines various of the prioritize signals, and provides signals indicative of microprocessor performance. Each silo includes, in series, a plurality of stages, with each stage containing a single latch. The stages of the silo are synchronized with the stages of the main processor pipeline. The performance monitor operates in real-time, at the same frequency as the microprocessor, and in parallel to the main processor pipeline.
    Type: Grant
    Filed: December 31, 1997
    Date of Patent: April 18, 2000
    Assignee: Intel Corporation
    Inventors: Achmed R. Zahir, Vincent E. Hummel, Ralph M. Kling, Tse-Yu Yeh
  • Patent number: 6044456
    Abstract: A system and method are described for maintaining synchronization of information propagating through multiple front-end pipelines operating in parallel. In general, these multiple front-end pipelines become asynchronous in response to a stall condition and re-establish synchronization by flushing both front-end pipelines as well as by selectively releasing these front-end pipelines from their stall condition at different periods of time.
    Type: Grant
    Filed: January 5, 1998
    Date of Patent: March 28, 2000
    Assignee: Intel Corporation
    Inventors: Keshavram N. Murty, Nazar A. Zaidi, Darshana S. Shah, Tse-Yu Yeh
  • Patent number: 6012134
    Abstract: A computer processor with a mechanism for improved prefetching of instrucns into a local cache includes an instruction pointer multiplexer that generates one of a plurality of instruction pointers in a first pipeline stage, which is used to produce a physical address from an ITLB lookup. A comparison is performed by compare logic between the physical address (and tags) of a set in the local cache and the set associated with the selected instruction pointer. A way multiplexer selects the proper way output from either the compare logic or an instruction streaming buffer that stores instructions returned from the first cache, but not yet written into the local cache. An instruction is bypassed to the way multiplexer from the instruction streaming buffer in response to an instruction streaming buffer hit and a miss signal by the compare logic.
    Type: Grant
    Filed: April 9, 1998
    Date of Patent: January 4, 2000
    Assignee: Institute for the Development of Emerging Architectures, L.L.C.
    Inventors: Rory McInerney, Eric Sindelar, Tse-Yu Yeh, Kalpana Ramakrishnan
  • Patent number: 5987599
    Abstract: A processor that includes an execution pipeline that executes a programmed flow of instructions is provided. The processor also includes an instruction pointer generator configured to generate an instruction pointer. Furthermore, the processor includes a branch prediction circuit configured to receive the instruction pointer. In response to the instruction pointer, the branch prediction circuit is configured to determine if an instruction corresponding to the instruction pointer includes a branch that is predicted taken and if so to provide to said execution pipeline a target instruction corresponding to said instruction. The branch prediction circuit provides to the execution pipeline at least one target instruction corresponding to the instruction corresponding to the instruction pointer.
    Type: Grant
    Filed: March 28, 1997
    Date of Patent: November 16, 1999
    Assignee: Intel Corporation
    Inventors: Mircea Poplingher, Tse-Yu Yeh
  • Patent number: 5903750
    Abstract: A method and apparatus for dynamically predicting the outcome and the tar address of a multiple-target branch instruction, where the multiple-target branch instruction contains at least two potential target addresses, not including the fall through address. In addition, this method and apparatus can also be used to predict multiple single-target branches simultaneously. The apparatus stores information indicating the outcome of previous executions and predictions of the multiple-target branch instruction in a branch prediction table. In addition, multiple target addresses (at least two) are associated with the multiple-target branch instruction. Using the information indicating the outcome of the previous execution of the multiple-target branch instruction, the apparatus predicts the outcome of a next execution of the multiple-target branch instruction, and predicts which, if any, of the target addresses associated with the multiple-target branch instruction, will be taken.
    Type: Grant
    Filed: November 20, 1996
    Date of Patent: May 11, 1999
    Assignee: Institute for the Development of Emerging Architectures, L.L.P.
    Inventors: Tse-Yu Yeh, Mircea Poplingher, Wenliang Chen, Hans Mulder
  • Patent number: 5815700
    Abstract: A branch prediction system is described for use within a microprocessor having an instruction cache capable of storing two or more instructions per cache line. Each entry of a branch prediction table (BPT) includes a value identifying whether at least one other instruction within a common cache line contains a branch. The value is referred to herein as a multiple-B bit value. The multiple-B bit value is examined by branch prediction logic while one branch prediction is being performed to determine whether a second branch prediction can be initiated for another branch within the same cache line. In one implementation, the multiple-B bit of one BPT entry is examined following a hit. A branch prediction for the entry generating a hit is initiated. Simultaneously, the BPT is reaccessed to search for an entry corresponding to another instruction within the same cache line if the multiple-B bit for the first entry was set. If the second entry is found, a secondary branch prediction is initiated.
    Type: Grant
    Filed: December 22, 1995
    Date of Patent: September 29, 1998
    Assignee: Intel Corporation
    Inventors: Mircea Poplingher, Tse-Yu Yeh, Wenliang Chen