Patent US5396640A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5396640A Expired / Lapsed US ⏱️ 0.0 years remaining

Boosting method and apparatus in a parallel computer

Assignee: Renesas Electronics Corp
•
Filing: 1992-05-15
•
Granted: 1995-03-07
•
Expires: 2012-05-15
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A parallel computer having a boosting function in which an instruction belonging to a later basic block is moved to a precedent basic block in an instruction group, the moved basic block being a branch instruction. The moved instruction and an instruction in the precedent basic block are arranged in parallel in the order of an instruction code. Therefore, the number of boosted instructions which can be executed in parallel is increased and the degree of parallelization of instruction is increased so that the function of the computer is improved.

Inventors

  • 👤 Chikako Ikenaga
  • 👤 Hideki Ando

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-04 21:36
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/38; G06F9/3802; G06F9/3804; G06F9/3836; G06F9/3842

Claims Analysis

Total Claims: 4
Claim 1
Independent Claim 171 words
A parallel computer comprising: means for executing instructions organized in basic blocks, each basic block including a plurality of linear instructions, each linear instruction providing only one result upon execution, each basic block ending in a branch instruction having two alternative results and selecting one of the alternative results upon execution of the branch instruction, wherein the basic blocks are arranged in sequential order of a precedent basic block and corresponding subsequent basic blocks for sequential execution, each branch instruction of a precedent basic block supplying, upon execution, one of the alternative results to the respective one of the corresponding subsequent basic blocks; means for moving the linear instructions of two corresponding subsequent basic blocks, in the sequential order, for parallel rather than sequential execution with linear instructions of the precedent basic block; a data bus for communicating data; a bypass control circuit for outputting a control signal and indicating whether data on the data bus is used; and data selecting means for selecting data in accordance with the control signal.
Claim 2
Dependent Claim 171 words
A parallel computer comprising: means for executing instructions organized in basic blocks, each basic block including a plurality of linear instructions, each linear instruction providing only one result upon execution, each basic block ending in a branch instruction having two alternative results and selecting one of the alternative results upon execution of the branch instruction, wherein the basic blocks are arranged in sequential order of a precedent basic block and corresponding subsequent basic blocks for sequential execution, each branch instruction of a precedent basic block supplying, upon execution, one of the alternative results to the respective one of the corresponding subsequent basic blocks; means for moving the linear instructions of two corresponding subsequent basic blocks, in the sequential order, for parallel rather than sequential execution with linear instructions of the precedent basic block; a data bus for communicating data; a bypass control circuit for outputting a control signal and indicating whether data on the data bus is used; and data selecting means for selecting data in accordance with the control signal.
Claim 3
Independent Claim 251 words
A method of boosting in a parallel computer programmed to execute instructions organized in basic blocks, each basic block including a plurality of linear instructions, each linear instruction providing only one result upon execution, each basic block ending in a branch instruction having two alternative results and selecting one of the alternative results upon execution of the branch instruction, the basic blocks being arranged in sequential order including a precedent basic block and corresponding subsequent basic blocks for sequential execution, each branch instruction of a precedent basic block supplying, upon execution, one of the alternative results to the respective one of the corresponding subsequent basic blocks, the method comprising: moving the linear instructions of the two corresponding subsequent basic blocks, in the sequential order, for parallel rather than sequential execution with the linear instructions of the precedent basic block; adding an identifier to each moved linear instruction identifying the respective subsequent basic block from which the linear instructions was moved; limiting the number of moved linear instructions, wherein execution of the moved linear instructions is completed not later than execution of the branch instruction in the precedent basic block since the alternative result selected by execution of the branch instruction of the precedent basic block is determined before any result of execution of the moved linear instructions is determined, whereby no memory is required for storing the result of execution of the moved linear instructions until the result of execution of the branch instruction of the precedent basic block is determined.
Claim 4
Independent Claim 251 words
A method of boosting in a parallel computer programmed to execute instructions organized in basic blocks, each basic block including a plurality of linear instructions, each linear instruction providing only one result upon execution, each basic block ending in a branch instruction having two alternative results and selecting one of the alternative results upon execution of the branch instruction, the basic blocks being arranged in sequential order including a precedent basic block and corresponding subsequent basic blocks for sequential execution, each branch instruction of a precedent basic block supplying, upon execution, one of the alternative results to the respective one of the corresponding subsequent basic blocks, the method comprising: moving the linear instructions of the two corresponding subsequent basic blocks, in the sequential order, for parallel rather than sequential execution with the linear instructions of the precedent basic block; adding an identifier to each moved linear instruction identifying the respective subsequent basic block from which the linear instructions was moved; limiting the number of moved linear instructions, wherein execution of the moved linear instructions is completed not later than execution of the branch instruction in the precedent basic block since the alternative result selected by execution of the branch instruction of the precedent basic block is determined before any result of execution of the moved linear instructions is determined, whereby no memory is required for storing the result of execution of the moved linear instructions until the result of execution of the branch instruction of the precedent basic block is determined.

References Cited (Backward Citations)

US4891753A Cited
US5150469A Cited
US5123108A Cited
US5185868A Cited
US5251306A Cited
US5155843A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1998-03-06 1998-09-05 1999-03-07 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2002-03-06 2002-09-05 2003-03-07 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2006-03-06 2006-09-05 2007-03-07 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag