NEON Programmer’s Guide学习笔记1

NEON —— the ARM Advanced SIMD architecture extension。

前提:ARM汇编和C

1.1 SISD、SIMD

  SISD:

add r0, r5

  VFP(Vector Floating Point):如果寄存器是4*32bits

VADD.F32 S24, S8, S16
// 顺序地执行4个操作
// S24 = S8 +S16
// S25 = S9 +S17
// S26 = S10 +S18
// S27 = S11 +S20

NEON:Q寄存器是64bits

VADD.I16 Q0, Q1, Q2
//two 64-bit registers相加
//a 64-bit register holding four 16-bit values

操作如下图所示:

1.2 NEON与VFP寄存器

registers are overlap,共用同一空间

The array notation to access individual elements of a vector is Dm[x] or Qm[x] where x is the index in the vector Dm or Qm. 例如:

 VMOV.8 D0[3], R3 

猜你喜欢

转载自www.cnblogs.com/acan589666/p/12342445.html