AI Engine  (AIE) r2p15.2
 All Data Structures Functions Variables Groups Pages
Load/Store Operations

Overview

The compiler supports pointer dereferencing and pointer arithmetic. No special intrinsics are needed to load or store vectors. For example:

v4cint16 *input, *output;
// ... initialize input and output data pointers
v4cint16 mydata = *input++;
...
*output = mydata;

The data pointers must be aligned to 128-bit boundary for either 128-bit or 256-bit vector loads/stores. Load/Store behaviour is undefined when stack-allocated vector variables are unaligned.

Note
256-bit loads from the same memory bank stalls the processor for one cycle since the memory datapath is 128-bits.
See Also
'upd' Intrinsics (Updates) to substitute newly loaded data into a specified lane of larger sized buffers
'srs' Intrinsics (Shift-Round-Saturate) to adjust and move accumulator data into regular variables before storing them in memory

Modules

 Streams