数据处理指令有延迟吗? - 解释ARM Cortex A9时序手册

时间:2017-08-25 19:55:29

标签: assembly arm timing

我需要帮助解释关于时序的ARM Cortex A9手册。

ARM A9 Cycle timings

根据要点"数据处理指令循环时间"给出了单位周期时间 - 当我查看Multiplication instructions时,给出了周期和延迟 - 这是否会强加于ADD指令没有额外的延迟?

1 个答案:

答案 0 :(得分:1)

这与每个执行单元的管道深度有关。 该图显示了无序处理器的管道(Cortex A-15,Cortex A9也是无序处理器,但管道较短)。 整数执行单元只有一个周期,因此它们在执行时没有额外的延迟。但是,乘法执行单元有4个周期。这并不意味着总是需要4个周期,但根据所使用的寄存器的值和数量,它可能需要4个,更少或更多的周期。

pipeline

在表格中,您可以看到延迟和吞吐量的更多细节,例如每4个周期每20到1个SDIV 1

Divide and Multiply Instructions

该表取自Cortex-A57 Software Optimization Guide 管道图像来自此处:Berkeley Design Technology, Inc