以下是具有3级流水线的Arm Cortex M4处理器的说明。我们如何知道此类指令的流水线重新填充周期数?
Assembler Cycles
1. MOV PC, Rm 1 + P
2. ADD PC, PC, Rm 1 + P
3. B <label> 1 + P
4. BL <label> 1 + P
Run Code Online (Sandbox Code Playgroud)
根据数据表,P是管道重新填充所需的循环数。根据目标指令的对齐方式和宽度,以及处理器是否设法尽早推测地址,该范围为1到3。