标题:
ARM920T流水线工作理解
[打印本页]
作者:
xiaotang
时间:
2013-11-15 02:20
标题:
ARM920T流水线工作理解
最近在学习RISC机器的设计过程中联系到ARM920T内核的流水线工作,以前编程的时候接触过一点,主要是处理中断现场。ARM920T是三级流水线设计,即取指译码、执行、回写结果。内核控制器会在每一次指令执行完毕后检查所有的中断信号,因此在检查当前中断信号时PC寄存器中存储的是当前执行完毕指令的下一条指令的下一条指令。因为,当取出一条指令时,PC<-(PC+1),当执行一条指令时,流水线工作继续做PC+1,当回写结果即执行完当前指令时PC+3后写入了PC,因此当前指令地址=PC-3,当前指令的下一条指令地址=PC-2。
ARM920T不像Cortex-M3核会自动保存现场,编译工具也不提供自动处理,需要用户在编写启动代码时手动的处理,即保存现场环境到用户栈中,在中断返回时推出确保正常的指令流顺序进行。
ARM920T有多种工作模式,用户需要使用正确工作模式的SP指针确保正常的返回
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1