copy_gm_to_ubuf_align
功能说明
从GM搬运至UB的align接口。
如果lenBurst+ leftPaddingNum+ rightPaddingNum对齐为32B,则没有哑数据写入UB,从OUT读取的所有数据将写入UB,否则会有额外的哑数据写入UB。哑数据是在不进行padding的情况下,每个burst的第一个元素的复制。如果做了padding,哑数据就是set_mov_pad_val中padding值的重复。
图1 copy_gm_to_ubuf_align图示,其中lenBurst+ leftPaddingNum+ rightPaddingNum对齐为32B
图2 copy_gm_to_ubuf_align图示,其中lenBurst+ leftPaddingNum+ rightPaddingNum未对齐为32B
接口原型
// 相同接口的不同原型区别在于源地址和目的地址的数据类型不同 void copy_gm_to_ubuf_align_b8(__ubuf__ void *dst, __gm__ void *src, uint8_t sid, uint16_t nBurst, uint32_t lenBurst, uint8_t leftPaddingNum, uint8_t rightPaddingNum, uint32_t srcGap, uint32_t dstGap); void copy_gm_to_ubuf_align_b16(__ubuf__ void *dst, __gm__ void *src, uint8_t sid, uint16_t nBurst, uint32_t lenBurst, uint8_t leftPaddingNum, uint8_t rightPaddingNum, uint32_t srcGap, uint32_t dstGap); void copy_gm_to_ubuf_align_b32(__ubuf__ void *dst, __gm__ void *src, uint8_t sid, uint16_t nBurst, uint32_t lenBurst, uint8_t leftPaddingNum, uint8_t rightPaddingNum, uint32_t srcGap, uint32_t dstGap);
流水类型
PIPE_MTE2
父主题: 搬运并补padding