copy_tile
-
void ckernel::copy_tile(uint32_t in_cb_id, uint32_t in_tile_index, uint32_t dst_tile_index)
-
Copies a single tile from the specified input CB and writes the result to DST at a specified index. The function will employ unpacker to first unpack into SRC registers and then perform move into DST registers, at a specified index. For the in_tile_index to be valid for this call, cb_wait_front(n) had to be previously called to ensure that at least some number n>0 of tiles are available in the input CB. The CB index 0 then references the first tile in the received section of the CB, up to index n-1 (in a FIFO order). The DST register buffer must be in acquired state via acquire_dst call. This call is blocking and is only available on the compute engine.
Return value: None
Argument
Description
Data type
Valid range
required
in_cb_id
The identifier of the source circular buffer (CB)
uint32_t
0 to 31
Yes
in_tile_index
The index of the tile to copy from the input CB
uint32_t
Must be less than the size of the CB
Yes
dst_tile_index
The index of the tile in the DST register
uint32_t
Must be less than the size of the DST register (16)
Yes