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...
Saved in:
Main Authors | , |
---|---|
Format | Patent |
Language | English |
Published |
04.10.2017
|
Subjects | |
Online Access | Get full text |
Cover
Loading…
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 |