SPRUIE9D May 2017 – May 2024 DRA74P , DRA75P , DRA76P , DRA77P
The following parameters should be programmed before starting VTNF task:
After the parameters are configured, computation can be started by software (or DMA) writing to the VTNF_CTRL[0] EN bitfield, or by SIMCOP HW sequencer sending a pulse on VTNF_start signal. VTNF_CTRL[9] TRIG_SRC must be set to be consistent with the starting mechanism.
Once VTNF starts execution, before it’s idle, any further signaling on the start signal or writing to VTNF_CTRL[0] EN bitfield is ignored.
Access to other register fields are optional:
The VTNF module signals task completion by interrupt and VTNF_done signal. The interrupt is sent only when it’s enabled, via VTNF_CTRL[8] INTEN. The VTNF_done signal is always sent.
The VTNF provides a busy bit (VTNF_CTRL[16] BUSY) for software to poll the busy/idle status, for debug or for initial software development that bypasses interrupts and hardware sequencer. Relative latency of done, interrupt, and VTNF_CTRL[16] BUSY is within 2 VTNF_CFG_CLK (configuration clock) cycles or 1 VTNF_FCLK cycle (twice the speed of cfg clock).
VTNF does not have any shadow registers; as this is a block-based coprocessor, parameters apply to the whole frame and only one set of config registers is constructed. Parameter change should happen in between active frame processing.