noc_semaphore_inc
-
template<bool posted = false>
void noc_semaphore_inc(uint64_t addr, uint32_t incr, uint8_t noc_id = noc_index, uint8_t vc = NOC_UNICAST_WRITE_VC)
-
The Tensix core executing this function call initiates an atomic increment (with 32-bit wrap) of a remote Tensix core L1 memory address. This L1 memory address is used as a semaphore of size 4 Bytes, as a synchronization mechanism. Refer to <arch>/noc/noc.h for the documentation of noc_atomic_increment.
Return value: None
Argument Description
addr Encoding of the destination location (x,y)+address
incr The value to increment by
noc_id Which NOC to use for the transaction
vc Which VC to use for the transaction
posted (template argument) Whether the call is posted or nonposted (i.e. needs to be acked)