JPS5759253A - Branch instruction prefetch system - Google Patents
Branch instruction prefetch systemInfo
- Publication number
- JPS5759253A JPS5759253A JP13545780A JP13545780A JPS5759253A JP S5759253 A JPS5759253 A JP S5759253A JP 13545780 A JP13545780 A JP 13545780A JP 13545780 A JP13545780 A JP 13545780A JP S5759253 A JPS5759253 A JP S5759253A
- Authority
- JP
- Japan
- Prior art keywords
- branch
- instruction
- executed
- same
- prefetch
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3808—Instruction prefetching for instruction reuse, e.g. trace cache, branch target cache
- G06F9/381—Loop buffering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3842—Speculative instruction execution
- G06F9/3844—Speculative instruction execution using dynamic branch prediction, e.g. using branch history tables
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
Abstract
PURPOSE:To prefetch a branch instruction by forecasting the prefetch, by holding branch direction information in a branch direction control memory having the same structure with a buffer memory. CONSTITUTION:The tendency that an optional branch instruction executed several times is branched frequently in the same direction every time it is executed is utilized to store its branch direction, determined in the execution of the branch instruction, in a branch direction control memory 20 every time the instruction is executed. Prior to the execution, the instruction, where prefetched from a buffer memory 40 is prefetched by considering the possibility of branch in the same direction as before to be high. A prefetch control part 10 considers the possibility of branch in the same direction as before to be high according to the contents of a branch direction register 70 indicating the branch direction (success or failure) when the same branch instruction is executed, thus prefetching the instruction.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13545780A JPS6049340B2 (en) | 1980-09-29 | 1980-09-29 | Branch instruction prefetch method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13545780A JPS6049340B2 (en) | 1980-09-29 | 1980-09-29 | Branch instruction prefetch method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS5759253A true JPS5759253A (en) | 1982-04-09 |
JPS6049340B2 JPS6049340B2 (en) | 1985-11-01 |
Family
ID=15152152
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP13545780A Expired JPS6049340B2 (en) | 1980-09-29 | 1980-09-29 | Branch instruction prefetch method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6049340B2 (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5991553A (en) * | 1982-11-17 | 1984-05-26 | Nec Corp | Instruction prefetch device having real address branching history table |
JPS5991552A (en) * | 1982-11-17 | 1984-05-26 | Nec Corp | Instruction prefetch device having set associative type history table |
JPS5991554A (en) * | 1982-11-17 | 1984-05-26 | Nec Corp | Instruction prefetch device forecasting branch direction |
JPS59132045A (en) * | 1982-10-13 | 1984-07-30 | ハネウエル・インフオメ−シヨン・システムズ・インコ−ポレ−テツド | Method and apparatus for prefetching instruction |
JPS59177653A (en) * | 1983-03-29 | 1984-10-08 | Nec Corp | Instruction prefetch control system |
JPS6027945A (en) * | 1983-07-27 | 1985-02-13 | Nec Corp | Instruction fetching device |
JPS60164842A (en) * | 1984-02-08 | 1985-08-27 | Nec Corp | Instruction prefetching device |
JPS63175934A (en) * | 1987-01-16 | 1988-07-20 | Mitsubishi Electric Corp | Data processor |
JPH02287626A (en) * | 1989-04-28 | 1990-11-27 | Toshiba Corp | Pipeline system branch instruction controller |
-
1980
- 1980-09-29 JP JP13545780A patent/JPS6049340B2/en not_active Expired
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6341093B2 (en) * | 1982-10-13 | 1988-08-15 | Haneiueru Infuoomeishon Shisutemusu Inc | |
JPS59132045A (en) * | 1982-10-13 | 1984-07-30 | ハネウエル・インフオメ−シヨン・システムズ・インコ−ポレ−テツド | Method and apparatus for prefetching instruction |
JPS5991552A (en) * | 1982-11-17 | 1984-05-26 | Nec Corp | Instruction prefetch device having set associative type history table |
JPS5991554A (en) * | 1982-11-17 | 1984-05-26 | Nec Corp | Instruction prefetch device forecasting branch direction |
JPS5991553A (en) * | 1982-11-17 | 1984-05-26 | Nec Corp | Instruction prefetch device having real address branching history table |
JPS6310451B2 (en) * | 1982-11-17 | 1988-03-07 | Nippon Electric Co | |
JPS59177653A (en) * | 1983-03-29 | 1984-10-08 | Nec Corp | Instruction prefetch control system |
JPS6027945A (en) * | 1983-07-27 | 1985-02-13 | Nec Corp | Instruction fetching device |
JPS6236258B2 (en) * | 1983-07-27 | 1987-08-06 | Nippon Electric Co | |
JPS60164842A (en) * | 1984-02-08 | 1985-08-27 | Nec Corp | Instruction prefetching device |
JPH046983B2 (en) * | 1984-02-08 | 1992-02-07 | Nippon Electric Co | |
JPS63175934A (en) * | 1987-01-16 | 1988-07-20 | Mitsubishi Electric Corp | Data processor |
JPH02287626A (en) * | 1989-04-28 | 1990-11-27 | Toshiba Corp | Pipeline system branch instruction controller |
Also Published As
Publication number | Publication date |
---|---|
JPS6049340B2 (en) | 1985-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR910014804A (en) | How to charge command queue | |
KR900012155A (en) | Data processing systems | |
ATE118628T1 (en) | COMPUTER CONTROL WITH BRANCHING IN A SINGLE CYCLE. | |
EP0199946A3 (en) | Instruction prefetch buffer control and method of controlling an instruction prefetch buffer | |
ES8403221A1 (en) | Instruction prefetching data processing apparatus including a conditional branch instruction predictor. | |
KR870000643A (en) | Interactive branch prediction and optimization method and apparatus | |
ES8402954A1 (en) | Information processing unit. | |
JPS5759253A (en) | Branch instruction prefetch system | |
JPS5760441A (en) | Information processing equipment | |
JPS5731049A (en) | Information processing equipment | |
JPS6429933A (en) | Store buffer controller for buffer storage system | |
JPS57157373A (en) | Vector processor | |
JPS5775356A (en) | Instruction pre-fetch control system | |
JPS57161936A (en) | Microprgram controlled information processing device | |
JPS6431238A (en) | System for controlling store buffer | |
JPS5785148A (en) | Instruction sequence control device | |
JPS5729152A (en) | Information processor prefetching instruction | |
JPS5769457A (en) | Microprogram controller | |
JPS5734254A (en) | Information processing device | |
JPS6431228A (en) | Instruction prefetching control device | |
JPS6429953A (en) | Controller for buffer move-in of buffer storage system | |
JPS5731050A (en) | Advance control system for branch instruction | |
JPS5339032A (en) | Branch control system | |
JPS575157A (en) | Extension system for branch address of microinstruction | |
JPS5734253A (en) | Brunch instruction controlling circuit |