DynamicDataFlow API#

DynamicDataFlow Device APIs.

Functions#

void cupvaDDFClose(uint32_t *ddfBasePtr)

Release the dynamic dataflow, basically break the dataflow loop.

void cupvaDDFFlush(uint32_t *ddfPayloadPtr, uint32_t *ddfVpucTblPtr, const uint8_t nodeNumPerLane, const uint8_t laneNum)

Flush the parallel dynamic dataflow table into vpu config table.

uint32_t * cupvaDDFGetRawPtr1D(uint32_t *ddfBasePtr, uint8_t nodeIdx)

get the pointer for a certain node from the raw 1D dynamic dataflow table

uint32_t * cupvaDDFGetRawPtr2D(uint32_t *ddfBasePtr, uint8_t nodeIdx)

get the pointer for a certain node from the raw 2D dynamic dataflow table

bool cupvaDDFIsDstVmem(uint32_t *ddfPtr, const uint32_t ddfPitch)

check if the dst buffer is from VMEM

bool cupvaDDFIsSrcVmem(uint32_t *ddfPtr, const uint32_t ddfPitch)

check if the src buffer is from VMEM

void cupvaDDFOpen(uint32_t *ddfBasePtr, ExtMemPointer extBufSymbol, uint32_t vmemBufAddr)

Recover the dynamic dataflow raw table through the VMEM/L2/DRAM buffer base and DMA ram base.

void cupvaDDFParallelClose(uint32_t *ddfBasePtr)

Release the parallel dynamic dataflow, basically break the dataflow loop.

void cupvaDDFParallelOpen(uint32_t *ddfBasePtr, ExtMemPointer extBufSymbol, uint32_t vmemBufAddr)

Recover the parallel dynamic dataflow raw table through the VMEM/L2/DRAM buffer base and DMA ram base.

void cupvaDDFParallelSync(uint32_t *ddfBasePtr)

Sync the parallel dynamic dataflow.

void cupvaDDFParallelTrig(uint32_t *ddfBasePtr)

Trigger the parallel dynamic dataflow.

void cupvaDDFSync(uint32_t *ddfBasePtr)

Sync the dynamic dataflow.

void cupvaDDFTrig(uint32_t *ddfBasePtr)

Trigger the dynamic dataflow.

void cupvaDDFUpdateDdtm(uint32_t *ddfBasePtr, uint8_t newVal, uint8_t nodeIdx)

update the dst transfer mode in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdateDdtm(uint32_t *ddfBasePtr, vintx const &newVal, uint8_t nodeIdx)

update the dst transfer mode in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdateDmaBase(uint32_t *ddfPayloadPtr, const uint8_t nodeNumPerLane, const uint8_t laneNum)

Recover the dynamic dataflow raw table with DMA ram base addr.

void cupvaDDFUpdateDstAddr(uint32_t *ddfBasePtr, uint64_t newVal, uint8_t nodeIdx)

update the dst field in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdateDstAddr(uint32_t *ddfBasePtr, vintx const &newDstAddrLo, vintx const &newDstAddrHi, uint8_t nodeIdx)

update the dst addr field in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdateDstm(uint32_t *ddfBasePtr, vintx const &newVal, uint8_t nodeIdx)

update the src transfer mode in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdateDstm(uint32_t *ddfBasePtr, uint8_t newVal, uint8_t nodeIdx)

update the src transfer mode in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdateItc(uint32_t *ddfBasePtr, vintx const &newVal, uint8_t nodeIdx)

update the ITC(Intermediate Transfer Completion) in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdateItc(uint32_t *ddfBasePtr, uint8_t newVal, uint8_t nodeIdx)

update the ITC(Intermediate Transfer Completion) in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdateLdid(uint32_t *ddfBasePtr, uint8_t newVal, uint8_t nodeIdx)

update the link descriptor in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdateLdid(uint32_t *ddfBasePtr, vintx const &newVal, uint8_t nodeIdx)

update the link descriptor in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdateLpCntl(uint32_t *ddfBasePtr, vintx const &newVal, uint8_t nodeIdx)

update the LP_CNTL DMA descriptor word in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdateLpCntl(uint32_t *ddfBasePtr, uint32_t newVal, uint8_t nodeIdx)

update the LP_CNTL DMA descriptor word in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdateLpDst(uint32_t *ddfBasePtr, uint16_t newVal, uint8_t nodeIdx)

update the line pitch of dst buffer in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdateLpDst(uint32_t *ddfBasePtr, vintx const &newVal, uint8_t nodeIdx)

update the line pitch of dst buffer in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdateLpSrc(uint32_t *ddfBasePtr, uint16_t newVal, uint8_t nodeIdx)

update the line pitch of src buffer in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdateLpSrc(uint32_t *ddfBasePtr, vintx const &newVal, uint8_t nodeIdx)

update the line pitch of src buffer in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdatePx(uint32_t *ddfBasePtr, uint8_t newVal, uint8_t nodeIdx)

update the horizontal padding in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdatePx(uint32_t *ddfBasePtr, vintx const &newVal, uint8_t nodeIdx)

update the horizontal padding in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdatePxdir(uint32_t *ddfBasePtr, uint8_t newVal, uint8_t nodeIdx)

update the horizontal padding direction in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdatePxdir(uint32_t *ddfBasePtr, vintx const &newVal, uint8_t nodeIdx)

update the horizontal padding direction in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdatePy(uint32_t *ddfBasePtr, uint8_t newVal, uint8_t nodeIdx)

update the vertical padding in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdatePy(uint32_t *ddfBasePtr, vintx const &newVal, uint8_t nodeIdx)

update the vertical padding in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdatePydir(uint32_t *ddfBasePtr, vintx const &newVal, uint8_t nodeIdx)

update the vertical padding direction in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdatePydir(uint32_t *ddfBasePtr, uint8_t newVal, uint8_t nodeIdx)

update the vertical padding direction in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdateSrcAddr(uint32_t *ddfBasePtr, uint64_t newVal, uint8_t nodeIdx)

update the src in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdateSrcAddr(uint32_t *ddfBasePtr, vintx const &newSrcAddrLo, vintx const &newSrcAddrHi, uint8_t nodeIdx)

update the src field in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdateTileCntl(uint32_t *ddfBasePtr, vintx const &newVal, uint8_t nodeIdx)

update the TILE_CNTL DMA descriptor word in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdateTileCntl(uint32_t *ddfBasePtr, uint32_t newVal, uint8_t nodeIdx)

update the TILE_CNTL DMA descriptor word in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdateTransCntl(uint32_t *ddfBasePtr, uint32_t newVal, uint8_t nodeIdx)

update the TRANS_CNTL DMA descriptor word in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdateTransCntl(uint32_t *ddfBasePtr, vintx const &newVal, uint8_t nodeIdx)

update the TRANS_CNTL DMA descriptor word in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdateTx(uint32_t *ddfBasePtr, uint16_t newVal, uint8_t nodeIdx)

update the tile width in scalar mode for dynamic dataflow 1D table

void cupvaDDFUpdateTx(uint32_t *ddfBasePtr, vintx const &newVal, uint8_t nodeIdx)

update the tile width in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdateTy(uint32_t *ddfBasePtr, vintx const &newVal, uint8_t nodeIdx)

update the tile height in vector mode for dynamic dataflow 2D table

void cupvaDDFUpdateTy(uint32_t *ddfBasePtr, uint16_t newVal, uint8_t nodeIdx)

update the tile height in scalar mode for dynamic dataflow 1D table

Functions#

inline void cupvaDDFClose(uint32_t *ddfBasePtr)#

Release the dynamic dataflow, basically break the dataflow loop.

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:

ddfBasePtr – pointer to the dynamic dataflow table

inline void cupvaDDFFlush(
uint32_t *ddfPayloadPtr,
uint32_t *ddfVpucTblPtr,
const uint8_t nodeNumPerLane,
const uint8_t laneNum,
)#

Flush the parallel dynamic dataflow table into vpu config table.

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfPayloadPtr – the pointer to the payload of raw dynamic dataflow table, skipping the header part

  • ddfVpucTblPtr – the pointer to the internal vpu config table

  • nodeNumPerLane – the node number in a dynamic dataflow lane. The maximum node number is 4.

  • laneNum – the dynamic dataflow lane number. The maximum lane number is 8.

inline uint32_t *cupvaDDFGetRawPtr1D(
uint32_t *ddfBasePtr,
uint8_t nodeIdx,
)#

get the pointer for a certain node from the raw 1D dynamic dataflow table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • nodeIdx – node index

Returns:

unsigned* return the pointer for a certain node in the raw 1D table

inline uint32_t *cupvaDDFGetRawPtr2D(
uint32_t *ddfBasePtr,
uint8_t nodeIdx,
)#

get the pointer for a certain node from the raw 2D dynamic dataflow table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • nodeIdx – node index in a certain lane

Returns:

unsigned* return the pointer for a certain node in the raw 2D table

inline bool cupvaDDFIsDstVmem(
uint32_t *ddfPtr,
const uint32_t ddfPitch,
)#

check if the dst buffer is from VMEM

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfPtr – the pointer to a certain node

  • ddfPitch – the dynamic dataflow table pitch

Returns:

bool true if the dst buffer is from VMEM

inline bool cupvaDDFIsSrcVmem(
uint32_t *ddfPtr,
const uint32_t ddfPitch,
)#

check if the src buffer is from VMEM

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfPtr – the pointer to a certain node

  • ddfPitch – the dynamic dataflow table pitch

Returns:

bool true if the src buffer is from VMEM

inline void cupvaDDFOpen(
uint32_t *ddfBasePtr,
ExtMemPointer extBufSymbol,
uint32_t vmemBufAddr,
)#

Recover the dynamic dataflow raw table through the VMEM/L2/DRAM buffer base and DMA ram base.

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – pointer to the dynamic dataflow table

  • extBufSymbol – the symbol for the external(L2 or DRAM) buffer

  • vmemBufAddr – the VMEM addr

inline void cupvaDDFParallelClose(uint32_t *ddfBasePtr)#

Release the parallel dynamic dataflow, basically break the dataflow loop.

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:

ddfBasePtr – pointer to the dynamic dataflow table

inline void cupvaDDFParallelOpen(
uint32_t *ddfBasePtr,
ExtMemPointer extBufSymbol,
uint32_t vmemBufAddr,
)#

Recover the parallel dynamic dataflow raw table through the VMEM/L2/DRAM buffer base and DMA ram base.

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – pointer to the dynamic dataflow table

  • extBufSymbol – the symbol for the external(L2 or DRAM) buffer

  • vmemBufAddr – the VMEM addr

inline void cupvaDDFParallelSync(uint32_t *ddfBasePtr)#

Sync the parallel dynamic dataflow.

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:

ddfBasePtr – pointer to the dynamic dataflow table

inline void cupvaDDFParallelTrig(uint32_t *ddfBasePtr)#

Trigger the parallel dynamic dataflow.

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:

ddfBasePtr – pointer to the dynamic dataflow table

inline void cupvaDDFSync(uint32_t *ddfBasePtr)#

Sync the dynamic dataflow.

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:

ddfBasePtr – pointer to the dynamic dataflow table

inline void cupvaDDFTrig(uint32_t *ddfBasePtr)#

Trigger the dynamic dataflow.

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:

ddfBasePtr – pointer to the dynamic dataflow table

inline void cupvaDDFUpdateDdtm(
uint32_t *ddfBasePtr,
uint8_t newVal,
uint8_t nodeIdx,
)#

update the dst transfer mode in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new link descriptor

  • nodeIdx – specify the node

inline void cupvaDDFUpdateDdtm(
uint32_t *ddfBasePtr,
vintx const &newVal,
uint8_t nodeIdx,
)#

update the dst transfer mode in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new link descriptor

  • nodeIdx – specify the node

inline void cupvaDDFUpdateDmaBase(
uint32_t *ddfPayloadPtr,
const uint8_t nodeNumPerLane,
const uint8_t laneNum,
)#

Recover the dynamic dataflow raw table with DMA ram base addr.

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfPayloadPtr – the pointer to payload of the dynamic dataflow table, skipping the header part

  • nodeNumPerLane – the node number in a certain lane

  • laneNum – the dynamic dataflow lane number

inline void cupvaDDFUpdateDstAddr(
uint32_t *ddfBasePtr,
uint64_t newVal,
uint8_t nodeIdx,
)#

update the dst field in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

This API also writes the required fields in desc cntl and trans cntl registers for the new address. Fields in these registers unrelated to the dst address are preserved.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new dst addr. Bits 39:0 carry address data, higher bits may be set by cupvaSurfaceAddress2D APIs to allow this API to configure block linear transfers.

  • nodeIdx – specify the node

inline void cupvaDDFUpdateDstAddr(
uint32_t *ddfBasePtr,
vintx const &newDstAddrLo,
vintx const &newDstAddrHi,
uint8_t nodeIdx,
)#

update the dst addr field in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

This API also writes the required fields in desc cntl and trans cntl registers for the new address. Fields in these registers unrelated to the dst address are preserved.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newDstAddrLo – lower 32-bit of new dst addr

  • newDstAddrHi – higher part of new dst addr. Bits 7:0 carry address data, higher bits may be set by cupvaSurfaceAddress2D APIs to allow this API to configure block linear transfers.

  • nodeIdx – specify the node

inline void cupvaDDFUpdateDstm(
uint32_t *ddfBasePtr,
vintx const &newVal,
uint8_t nodeIdx,
)#

update the src transfer mode in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new link descriptor

  • nodeIdx – specify the node

inline void cupvaDDFUpdateDstm(
uint32_t *ddfBasePtr,
uint8_t newVal,
uint8_t nodeIdx,
)#

update the src transfer mode in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new link descriptor

  • nodeIdx – specify the node

inline void cupvaDDFUpdateItc(
uint32_t *ddfBasePtr,
vintx const &newVal,
uint8_t nodeIdx,
)#

update the ITC(Intermediate Transfer Completion) in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new ITC

  • nodeIdx – specify the node

inline void cupvaDDFUpdateItc(
uint32_t *ddfBasePtr,
uint8_t newVal,
uint8_t nodeIdx,
)#

update the ITC(Intermediate Transfer Completion) in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new ITC

  • nodeIdx – specify the node

inline void cupvaDDFUpdateLdid(
uint32_t *ddfBasePtr,
uint8_t newVal,
uint8_t nodeIdx,
)#

update the link descriptor in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new link descriptor

  • nodeIdx – specify the node

inline void cupvaDDFUpdateLdid(
uint32_t *ddfBasePtr,
vintx const &newVal,
uint8_t nodeIdx,
)#

update the link descriptor in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new link descriptor

  • nodeIdx – specify the node

inline void cupvaDDFUpdateLpCntl(
uint32_t *ddfBasePtr,
vintx const &newVal,
uint8_t nodeIdx,
)#

update the LP_CNTL DMA descriptor word in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new LP_CNTL word

  • nodeIdx – specify the node

inline void cupvaDDFUpdateLpCntl(
uint32_t *ddfBasePtr,
uint32_t newVal,
uint8_t nodeIdx,
)#

update the LP_CNTL DMA descriptor word in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new LP_CNTL word

  • nodeIdx – specify the node

inline void cupvaDDFUpdateLpDst(
uint32_t *ddfBasePtr,
uint16_t newVal,
uint8_t nodeIdx,
)#

update the line pitch of dst buffer in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new line pitch of dst buffer

  • nodeIdx – specify the node

inline void cupvaDDFUpdateLpDst(
uint32_t *ddfBasePtr,
vintx const &newVal,
uint8_t nodeIdx,
)#

update the line pitch of dst buffer in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new line pitch of dst buffer

  • nodeIdx – specify the node

inline void cupvaDDFUpdateLpSrc(
uint32_t *ddfBasePtr,
uint16_t newVal,
uint8_t nodeIdx,
)#

update the line pitch of src buffer in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new line pitch of src buffer

  • nodeIdx – specify the node

inline void cupvaDDFUpdateLpSrc(
uint32_t *ddfBasePtr,
vintx const &newVal,
uint8_t nodeIdx,
)#

update the line pitch of src buffer in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new line pitch of src buffer

  • nodeIdx – specify the node

inline void cupvaDDFUpdatePx(
uint32_t *ddfBasePtr,
uint8_t newVal,
uint8_t nodeIdx,
)#

update the horizontal padding in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new horizontal padding

  • nodeIdx – specify the node

inline void cupvaDDFUpdatePx(
uint32_t *ddfBasePtr,
vintx const &newVal,
uint8_t nodeIdx,
)#

update the horizontal padding in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new horizontal padding

  • nodeIdx – specify the node

inline void cupvaDDFUpdatePxdir(
uint32_t *ddfBasePtr,
uint8_t newVal,
uint8_t nodeIdx,
)#

update the horizontal padding direction in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new horizontal padding direction

  • nodeIdx – specify the node

inline void cupvaDDFUpdatePxdir(
uint32_t *ddfBasePtr,
vintx const &newVal,
uint8_t nodeIdx,
)#

update the horizontal padding direction in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new horizontal padding direction

  • nodeIdx – specify the node

inline void cupvaDDFUpdatePy(
uint32_t *ddfBasePtr,
uint8_t newVal,
uint8_t nodeIdx,
)#

update the vertical padding in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new vertical padding

  • nodeIdx – specify the node

inline void cupvaDDFUpdatePy(
uint32_t *ddfBasePtr,
vintx const &newVal,
uint8_t nodeIdx,
)#

update the vertical padding in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new vertical padding

  • nodeIdx – specify the node

inline void cupvaDDFUpdatePydir(
uint32_t *ddfBasePtr,
vintx const &newVal,
uint8_t nodeIdx,
)#

update the vertical padding direction in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new vertical padding direction

  • nodeIdx – specify the node

inline void cupvaDDFUpdatePydir(
uint32_t *ddfBasePtr,
uint8_t newVal,
uint8_t nodeIdx,
)#

update the vertical padding direction in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new vertical padding direction

  • nodeIdx – specify the node

inline void cupvaDDFUpdateSrcAddr(
uint32_t *ddfBasePtr,
uint64_t newVal,
uint8_t nodeIdx,
)#

update the src in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

This API also writes the required fields in desc cntl and trans cntl registers for the new address. Fields in these registers unrelated to the src address are preserved.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new src addr. Bits 39:0 carry address data, higher bits may be set by cupvaSurfaceAddress2D APIs to allow this API to configure block linear transfers.

  • nodeIdx – specify the node

inline void cupvaDDFUpdateSrcAddr(
uint32_t *ddfBasePtr,
vintx const &newSrcAddrLo,
vintx const &newSrcAddrHi,
uint8_t nodeIdx,
)#

update the src field in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

This API also writes the required fields in desc cntl and trans cntl registers for the new address. Fields in these registers unrelated to the src address are preserved.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newSrcAddrLo – lower 32-bit of new src addr

  • newSrcAddrHi – higher part of new src addr. Bits 7:0 carry address data, higher bits may be set by cupvaSurfaceAddress2D APIs to allow this API to configure block linear transfers.

  • nodeIdx – specify the node

inline void cupvaDDFUpdateTileCntl(
uint32_t *ddfBasePtr,
vintx const &newVal,
uint8_t nodeIdx,
)#

update the TILE_CNTL DMA descriptor word in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new TILE_CNTL word

  • nodeIdx – specify the node

inline void cupvaDDFUpdateTileCntl(
uint32_t *ddfBasePtr,
uint32_t newVal,
uint8_t nodeIdx,
)#

update the TILE_CNTL DMA descriptor word in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new TILE_CNTL word

  • nodeIdx – specify the node

inline void cupvaDDFUpdateTransCntl(
uint32_t *ddfBasePtr,
uint32_t newVal,
uint8_t nodeIdx,
)#

update the TRANS_CNTL DMA descriptor word in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new TRANS_CNTL word

  • nodeIdx – specify the node

inline void cupvaDDFUpdateTransCntl(
uint32_t *ddfBasePtr,
vintx const &newVal,
uint8_t nodeIdx,
)#

update the TRANS_CNTL DMA descriptor word in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new TRANS_CNTL word

  • nodeIdx – specify the node

inline void cupvaDDFUpdateTx(
uint32_t *ddfBasePtr,
uint16_t newVal,
uint8_t nodeIdx,
)#

update the tile width in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new tile width

  • nodeIdx – specify the node

inline void cupvaDDFUpdateTx(
uint32_t *ddfBasePtr,
vintx const &newVal,
uint8_t nodeIdx,
)#

update the tile width in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new tile width

  • nodeIdx – specify the node

inline void cupvaDDFUpdateTy(
uint32_t *ddfBasePtr,
vintx const &newVal,
uint8_t nodeIdx,
)#

update the tile height in vector mode for dynamic dataflow 2D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new tile height

  • nodeIdx – specify the node

inline void cupvaDDFUpdateTy(
uint32_t *ddfBasePtr,
uint16_t newVal,
uint8_t nodeIdx,
)#

update the tile height in scalar mode for dynamic dataflow 1D table

Deprecated:

This dataflow is deprecated. Use GatherScatterDataflow or SequenceDataflow instead.

Pointers passed to this function must be valid and must not be NULL. Failure to do so will result in undefined behavior.

Parameters:
  • ddfBasePtr – the pointer of dynamic dataflow table

  • newVal – new tile height

  • nodeIdx – specify the node