1. 程式人生 > >關於ARM9和ARM7中都是PC=當前執行指令地址+8的解釋

關於ARM9和ARM7中都是PC=當前執行指令地址+8的解釋

ARM7是三級流水線,AMR7的三級流水線如下:

執行

指令地址=0

取指

PC = 4

解碼

執行

指令地址=4

取指

PC = 8

解碼

執行

指令地址=8

取指

PC = 12

解碼

執行

指令地址=12

取指

PC = 16

解碼

執行

指令地址=16

ARM9是五級流水線,ARM9的五級流水線如下:

執行

指令地址=0

取指

PC = 4

解碼

執行

指令地址=4

快取/資料

回寫

取指

PC = 8

解碼

執行

指令地址=8

快取/資料

回寫

取指

PC = 12

解碼

執行

指令地址=12

快取/資料

取指

PC = 16

解碼

執行

指令地址=16

       可見,ARM9和ARM7中都是PC=當前執行指令地址+8的根本的原因是,兩者的流水線設計中,指令的執行階段都是處於流水線的第三級。