參數(shù)資料
型號: INSTRUCTIN603EWP
英文描述: Optimizing the Instruction Execution on the 603e
中文描述: 優(yōu)化了603e的指令執(zhí)行
文件頁數(shù): 23/54頁
文件大?。?/td> 325K
代理商: INSTRUCTIN603EWP
RISC Microprocessor Division
Page 23
Each conditional branch instruction includes a prediction bit, which is set by the compiler or an
assembly language programmer. This bit helps specify whether the branch is predicted to be taken or
not taken. This is known as
static prediction
because the prediction behavior is encoded in the
instruction. While the branch condition is waiting to be resolved, execution continues down the
predicted path, and these subsequent instructions are marked as
speculative instructions
.
(Speculative instructions are not allowed to change the programming model, such as update register
files or memory, and may stall until the branch is resolved and they become non-speculative.)
When the branch condition is resolved, if the prediction was correct, then the speculative instructions
are marked non-speculative, and no penalty is assessed. If the prediction was incorrect, then the
speculative instructions are
flushed
(removed from the instruction pipeline) and execution resumes
along the correct execution path.
The 603e has one level of prediction, meaning that a conditional branch encountered along a
speculative path cannot itself be executed speculatively. Instead, it will stall in the pipeline until the
previous branch is resolved.
In the leftmost diagram, we have instructions A, B, C, and D in the instruction queue. Instruction C is a
branch. In the next diagram (next cycle), instruction A was dispatched and C folded out by the BPU.
However, assume that branch C cannot be resolved (perhaps it is dependent on the results of
instruction A). All subsequent instructions are then marked speculative: D and the newly fetched
instructions E and F.
In the next diagram, we see that B and D were dispatched to the CQ and G and H fetched into the IQ.
In our example, branch C is now resolved and it turns out the branch was mispredicted. In the final
diagram, the speculative instructions are flushed, and the fetcher is ready to fetch instructions from the
correct input stream. If branch C had been correctly predicted, the speculative instructions would
simply be marked non-speculative and no stall would occur.
相關(guān)PDF資料
PDF描述
INT201PFI1 Interface IC
INT201TFI1 Interface IC
INT2404G LED BACKLIGHT FOR LCD DISPLAY
INT4003G LED BACKLIGHT FOR LCD DISPLAY
INTEGRA Integra L64754 ISDB-S DVB/DSS Satellite Receiver
相關(guān)代理商/技術(shù)參數(shù)
參數(shù)描述
INSUL 2 DB-52P 制造商:ITT 功能描述:MICRO 制造商:ITT Interconnect Solutions 功能描述:MICRO
INSUL 2 DE 19 SKT DOUBLE 制造商:ITT 功能描述:MICRO 制造商:ITT Interconnect Solutions 功能描述:MICRO
INSUL 2 DE-19 PIN DBL DEN 制造商:ITT 功能描述:MICRO 制造商:ITT Interconnect Solutions 功能描述:MICRO
INSUL ASSY CV3450-36-6 PIN 制造商:ITT 功能描述:Circular 制造商:ITT Interconnect Solutions 功能描述:Circular
INSUL ASSY CV-R 36-10 PIN 制造商:ITT Interconnect Solutions 功能描述:Circular