Instruction prefetching

A data processing apparatus comprises prefetch circuitry for prefetching instructions 50 from a data store into an instruction queue. Branch prediction circuitry is provided for predicting outcomes 60 of branch or jump instructions and the prefetch circuitry prefetchs instructions 62 subsequent to t...

Full description

Saved in:
Bibliographic Details
Main Authors Antony John Penton, Kauser Yakub Johar
Format Patent
LanguageEnglish
Published 04.10.2017
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:A data processing apparatus comprises prefetch circuitry for prefetching instructions 50 from a data store into an instruction queue. Branch prediction circuitry is provided for predicting outcomes 60 of branch or jump instructions and the prefetch circuitry prefetchs instructions 62 subsequent to the branch based on the predicted outcome. Instruction identifying circuitry identifies whether a given instruction prefetched from the data store is a predetermined type of program flow altering instruction 54 and if so then controls the prefetch circuitry to halt prefetching of subsequent instructions into the instruction queue. Prefetching may be paused until the outcome of such an instruction is resolved 56, and then resume 58. Stopping prefetching beyond certain instructions may facilitate the avoidance of memory faults, or errors due to unintended prefetching from a literal pool. Instructions which change privilege level, wait for exceptions or interrupts, or involve context synchronisation may also stall prefetching.
Bibliography:Application Number: GB20160005434