Work Files Saved Searches
   My Account                                                  Search:   Quick/Number   Boolean   Advanced   Derwent    Help   


 The Delphion Integrated View

  Buy Now:   Buy PDF- 12pp  PDF  |   File History  |   Other choices   
  Tools:  Citation Link  |  Add to Work File:    
  View:  Expand Details   |  INPADOC   |  Jump to: 
  Go to:  Derwent  
 Email this to a friend  Email this to a friend 
       
Title: US7454597: Computer processing system employing an instruction schedule cache
[ Derwent Title ]


Country: US United States of America

View Images High
Resolution

 Low
 Resolution

 
12 pages

 
Inventor: Kailas, Krishnan K.; Tarrytown, NY, United States of America
Nair, Ravi; Briarcliff Manor, NY, United States of America
Sathaye, Sumedh W.; Cary, NC, United States of America
Sauer, Wolfram; Austin, TX, United States of America
Wellman, John-David; Hopewell Junction, NY, United States of America

Assignee: International Business Machines Corporation, Armonk, NY, United States of America
other patents from INTERNATIONAL BUSINESS MACHINES CORPORATION (280070) (approx. 44,393)
 News, Profiles, Stocks and More about this company

Published / Filed: 2008-11-18 / 2007-01-02

Application Number: US2007000618948

IPC Code: Advanced: G06F 9/38;
Core: more...

ECLA Code: G06F9/38E; G06F9/38E4; G06F9/38F2;

U.S. Class: 712/206; 712/213; 712/215; 712/240;

Field of Search: 712/206,207,213,214,215,240 711/123

Government Interest: GOVERNMENT INTEREST
    This invention was made with Government support under contract No.: NBCH3039004 awarded by Defense Advanced Research Projects Agency (DARPA). The government has certain rights in this invention.

Priority Number:
2007-01-02  US2007000618948

Abstract:     A processor core and method of executing instructions, both of which utilizes schedules, are presented. Each of the schedules includes a sequence of instructions, an address of a first of the instructions in the schedule, an order vector of an original order of the instructions in the schedule, a rename map of registers for each register in the schedule, and a list of register names used in the schedule. The schedule exploits instruction-level parallelism in executing out-of-order instructions. The processor core includes a schedule cache that is configured to store schedules, a shared cache configured to store both I-side and D-side cache data, and an execution resource for requesting a schedule to be executed from the schedule cache. The processor core further includes a scheduler disposed between the schedule cache and the cache. The scheduler creating the schedule using branch execution history from a branch history table to create the instructions when the schedule requested by the execution resource is not found in the schedule cache. The processor core executes the instructions according to the schedule being executed. The method includes requesting a schedule from a schedule cache. The method further includes fetching the schedule, when the schedule is found in the schedule cache; and creating the schedule, when the schedule is not found in the schedule cache. The method also includes renaming the registers in the schedule to avoid false dependencies in a processor core, mapping registers to renamed registers in the schedule, and stitching register values in and out of another schedule according to the list of register names and the rename map of registers.

Attorney, Agent or Firm: Cantor Colburn LLP ; Wardas, Mark ;

Primary / Asst. Examiners: Treat, William M;

INPADOC Legal Status: Show legal status actions          Buy Now: Family Legal Status Report

Family: Show 2 known family members

First Claim:
Show all 10 claims
    1. A method of executing instructions, comprising:

requesting a schedule from a schedule cache, the schedule includes a sequence of instructions, an address of a first of the instructions in the schedule, an order vector of an original order of the instructions in the schedule, a list of register names used but not defined in the schedule, a list of registers defined in the schedule, and a rename map of register names for each register in the list of registers defined in the schedule, the schedule exploiting instruction-level parallelism in executing out-of-order instructions;

if the schedule is found in the schedule cache, fetching the schedule;

if the schedule is not found in the schedule cache, creating the schedule;

renaming the registers in the schedule to avoid false dependencies in a processor core;

mapping registers to renamed registers in the schedule; and

stitching register values in and out of another schedule according to the list of register names used but not defined in the schedule, list of registers defined in the schedule, and the rename map of register names.



Background / Summary: Show background / summary

Drawing Descriptions: Show drawing descriptions

Description: Show description

       
U.S. References: Go to Result Set: All U.S. references   |  No patents reference this one   |   Backward references (10)   |   Citation Link

Buy
PDF
Patent  Pub.Date  Inventor Assignee   Title
Buy PDF- 14pp US5812810  1998-09 Sager  Digital Equipment Corporation Instruction coding to support parallel execution of programs
Buy PDF- 11pp US6351802  2002-02 Sheaffer  Intel Corporation Method and apparatus for constructing a pre-scheduled instruction cache
Buy PDF- 16pp US6704861  2004-03 McKeen et al.  Hewlett-Packard Development Company, L.P. Mechanism for executing computer instructions in parallel
Buy PDF- 30pp US6892293  2005-05 Sachs et al.  Intergraph Corporation VLIW processor and method therefor
Buy PDF- 17pp US20020144088A1  2002-10 Mohamed et al.   APPARATUS AND METHOD FOR ISSUE GROUPING OF INSTRUCTIONS IN A VLIW PROCESSOR
Buy PDF- 12pp US20030200396A1  2003-10 Musumeci   Scheme for reordering instructions via an instruction caching mechanism
Buy PDF- 14pp US20040148489A1  2004-07 Damron   Sideband VLIW processor
Buy PDF- 11pp US20040268098A1  2004-12 Almog et al.   Exploiting parallelism across VLIW traces
Buy PDF- 12pp US20050005084A1  2005-01 Burger et al.   Scalable processing architecture
Buy PDF- 7pp USRE38599  2004-09 Tremblay  Sun Microsystems, Inc. Pipelined instruction dispatch unit in a superscalar processor
       
Foreign References: None

Other References:
  • Black et al., “The Block-Based Trace Cache”, Proceedings of the 26th International Symposium on Computer Architecture, IEEE, May 2-4, 1999, pp. 196-207.
  • Talpes et al., “Execution Cache-Based Microarchitecture for Power-Efficient Superscalar Processors”; IEEE Transactions on Very Large Scale Integration (VLSI) Systems, Jan. 2005, pp. 14-26.
  • Ravi Nair et al.; “Exploiting Instruction Level Parallelism in Processors by Caching Scheduled Groups;” ACM 0-89791-901-7/97/0006; 1997; pp. 13-25.
  • Eric Rotenberg et al.; “Trace Cache: A Low Latency Approach to High Bandwidth Instruction Fetching;” Apr. 11, 1996.


  • Continuity Data:
    Application Number Filed Notes

    US2007000618948 2007-01-02  is a related to the prior publication
         US20080162884A1 issued 2008-07-03  COMPUTER PROCESSING SYSTEM EMPLOYING AN INSTRUCTION SCHEDULE CACHE


    Inquire Regarding Licensing

    Powered by Verity


    Plaques from Patent Awards      Gallery of Obscure PatentsNominate this for the Gallery...

    Thomson Reuters Copyright © 1997-2010 Thomson Reuters 
    Subscriptions  |  Web Seminars  |  Privacy  |  Terms & Conditions  |  Site Map  |  Contact Us  |  Help