首页 >知识库 >相关知识 > >ARM流水线技术

ARM流水线技术

时间:2020-03-09 11:11浏览次数:
    1.ARM的3级流水线
    ARM7架构采用了一个3段的流水线。
    (1)取指:将指令从内存中取出来。
    (2)译码:操作码和操作数被译码以决定执行什么功能。
    (3)执行:执行已译码的指令。
    2.ARM的流水线设计问题
    由上面的分析可以看到,在ARM7的3级流水线结构中流水线易出现阻塞或间断,这必然降低流水线的效率,因此,为了提高处理器的性能,必然要考虑如何优化处理器的组织结构。
    1)缩短程序执行时间
    计算处理器运行一个给定程序所需的时间的公式为:
    Tprog=
    式中:Tprog是执行一个程序所需时间;Ninst是执行该程序的指令条数;CPI是执行每条指令的平均时钟周期数;fclk是处理器的时钟频率。
    2)解决流水线的相关问题
    (1)流水线的结构相关
    (2)流水线的数据相关
    (3)流水线的控制相关
    3.ARM的5级流水线
    5级流水线可分为:
    (1)取指:将指令从指令存储器中取出,放入指令流水线中。
    (2)指令译码:对指令进行译码,从寄存器堆中读取寄存器操作数。
    (3)执行:把一个操作数移位,产生ALU结果。如果指令是load或store,在ALU中计算存储器的地址。
    (4)数据缓存:如果需要,访问数据存储器;否则,ALU的结果只是简单地缓冲一个时钟周期,以便使所有指令具有同样的流水线流程。
    (5)写回:将指令产生的结果回写到寄存器堆,包括任何从存储器读取的数据。

    阅读排行