找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3007|回复: 0
收起左侧

ARM920T流水线工作理解

[复制链接]
ID:56662 发表于 2013-11-15 02:20 | 显示全部楼层 |阅读模式
    最近在学习RISC机器的设计过程中联系到ARM920T内核的流水线工作,以前编程的时候接触过一点,主要是处理中断现场。ARM920T是三级流水线设计,即取指译码、执行、回写结果。内核控制器会在每一次指令执行完毕后检查所有的中断信号,因此在检查当前中断信号时PC寄存器中存储的是当前执行完毕指令的下一条指令的下一条指令。因为,当取出一条指令时,PC<-(PC+1),当执行一条指令时,流水线工作继续做PC+1,当回写结果即执行完当前指令时PC+3后写入了PC,因此当前指令地址=PC-3,当前指令的下一条指令地址=PC-2。

    ARM920T不像Cortex-M3核会自动保存现场,编译工具也不提供自动处理,需要用户在编写启动代码时手动的处理,即保存现场环境到用户栈中,在中断返回时推出确保正常的指令流顺序进行。

    ARM920T有多种工作模式,用户需要使用正确工作模式的SP指针确保正常的返回

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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