
CPU设计之分支预测
如果我们在取指令阶段的时候,就可以“提前知道”该指令是否为分支指令,并且可以知道它的方向(跳或不跳),以及相应的目标地址(target address)的话,那么就可以直接在下一个周期从分支指令的目标地址开始取指令,这样就不会对流水线产生影响,从而避免了做无用功。对于这种不需要等待分支指令的结果真的被计算出来,而是提前就预测结果的过程就是分支预测。一件东西之所以可以被预测,一定是它本身具有某些特点,使得预测其成功的概率是大于百分之五十的,这种情况下做预测才有相应的意义,我们后面再展开讲这一点。





















