Patent US5396640A successfully refreshed from Google Patents.
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
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 |