我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:双彩网 > 指令流水线 >

ARM中如何考虑指令流水线

归档日期:07-02       文本归类:指令流水线      文章编辑:爱尚语录

  ARM处理器使用流水线来增加处理器指令流的速度,这样可使几个操作同时进行,并使处理与存储器系统之间的操作更加流畅,连续,能提供0.9MIPS/MHZ的指令执行速度。PC代表程序计数器,流水线使用三个阶段,因此指令分为三个阶段执行:1.取指(从存储器装载一条指令);2.译码(识别将要被执行的指令);3.执行(处理指令并将结果写回寄存器)。而R15(PC)总是指向“正在取指”的指令,而不是指向“正在执行”的指令或正在“译码”的指令。一般来说,人们习惯性约定将“正在执行的指令作为参考点”,称之为当前第一条指令,因此PC总是指向第三条指令。当ARM状态时,每条指令为4字节长,所以PC始终指向该指令地址加8字节的地址,即:PC值=当前程序执行位置+8;2.................................................................

  另外对于3级流水线的ARM,一条指令从取指到执行完毕,实际时间也是3周期吧?还有如此算的话一周期执行一条指令,那60M的主频,实际代码运行速度为什么不是60MIPS,而要乘0.9呢?是不是把一些特殊指令,还有分支任务时指令延时也算了,才乘个系数0.9?还有ARM9的1.1MIPS/Hz是怎么实现的?

  为分支和循环操作的存在,使得在执行这些指令时需要清空流水线的指令执行效率降低,所以ARM7的指令性能是0.9MIPS/MHz。

  而ARM9相对于ARM7,由于是harvard结构,取指令和取操作数的效率更高,即执行某些指令的效率更高,所以其指令性能达到1.1MIPS/MHz。但这并不意味着,ARM9在1个指令周期内可以执行超过1条指令。

本文链接:http://egao-p.com/zhilingliushuixian/196.html