曲径通幽论坛

 找回密码
 立即注册
搜索
查看: 6501|回复: 0
打印 上一主题 下一主题

ARM 流水线与 PC

[复制链接]

4917

主题

5879

帖子

3万

积分

GROAD

曲径通幽,安觅芳踪。

Rank: 6Rank: 6

积分
34382
跳转到指定楼层
楼主
发表于 2011-1-27 00:24:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ARM7TDMI 和 ARM9TDMI 指令流水线见下图:


上面:
FETCH : 取指
DECODE : 译码
EXCUTE : 执行
MEMORY : 访存
WRITE :  回写

关于 PC 的位置:
PC 的位置总指向“正在取指”的指令。以正在执行的指令作为参考点,那么 PC = EXCUTE + 8 。也就是说,假设正在执行的指令是第一条指令,那么 PC 就指向第三条指令。比如:
   4:   e59f0020        ldr     r0, [pc, #32]   ; 2c
   8:   e51f1010        ldr     r1, [pc, #-16]  ; 0 <_TEXT_BASE>
   c:   e0400001        sub     r0, r0, r1
上面,地址 0x4 为正在执行的指令,那么 PC 已经指向了 0xc 地址处。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|曲径通幽 ( 琼ICP备11001422号-1|公安备案:46900502000207 )

GMT+8, 2024-5-5 22:55 , Processed in 0.077499 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表