我很高兴您已阅读我的帖子。非常感谢你。
我的问题是关于ARM NEON。
第一个问题是关于寄存器的大小。
我想知道“Apple A6”和“Cortex A15”的实际SIMD寄存器大小。
第二个问题是关于SIMD指令的循环。
我认为很多ARM处理器的NEON寄存器都有64位。
根据手册,“作为双视图,它是128位宽”
这意味着即使我在64位NEON寄存器中的2位使用4 x 32位值,
它会在一个周期内处理?
我想知道128位NEON和64位NEON之间的不同循环。
谢谢!
答案 0 :(得分:1)
这取决于执行的指令。
作为一般经验法则,简单的ALU指令不需要处理Q寄存器的周期而不是D寄存器,但乘法和/或置换指令在Q寄存器上操作时需要两倍的周期。您还应该意识到,Qd低64位的结果通常比上半部分的结果更早。
我不认为Apple的A6在周期方面与“原始”CA-15的行为有很大不同。 由于它们都共享相同的ISA,因此可以确保寄存器在ARMv7架构中是相同的。