JPS5759253A - Branch instruction prefetch system - Google Patents

Branch instruction prefetch system

Info

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
Application number
JP13545780A
Other languages
Japanese (ja)
Other versions
JPS6049340B2 (en
Inventor
Masanobu Akagi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Nippon Electric Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP13545780A priority Critical patent/JPS6049340B2/en
Publication of JPS5759253A publication Critical patent/JPS5759253A/en
Publication of JPS6049340B2 publication Critical patent/JPS6049340B2/en
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3808Instruction prefetching for instruction reuse, e.g. trace cache, branch target cache
    • G06F9/381Loop buffering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3842Speculative instruction execution
    • G06F9/3844Speculative 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.
JP13545780A 1980-09-29 1980-09-29 Branch instruction prefetch method Expired JPS6049340B2 (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (13)

* Cited by examiner, † Cited by third party
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