PC生成逻辑用于产生下一个待取指指令的PC,PC生成根据情形需要不同的处理方式。

(1)复位后的第一次取指

对于复位后的第一次取指,使用蜂鸟E203处理器的CPU-TOP层输入信号pc_rtvec指示的值作为第一次取指的PC值。用户可以通过在集成SoC顶层时,为此信号赋予不同的值来控制PC的复位默认值。

(2)顺序取指

对于顺序取指的情形,根据当前指令是16位指令还是32位指令判断自增值。如果当前指令是16位指令,顺序取指的下一条指令的PC为当前PC值加2;如果当前指令是32位指令,顺序取指的下一条指令的PC为当前PC值加4。

(3)分支指令

对于分支指令,则使用简单BPU预测的地址。

(4)流水线flush取指令

对于来自EXU的流水线冲刷,则使用EXU送过来的新PC值。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐