SPRUJ79 November 2024 F29H850TU
Interrupt Generation
Interrupts are generated based in the masked interrupt status of the WADI. Upon the error event, WADI generates an active-low pulse of 3 clock cycles to be triggered to CPU as an interrupt. Any overlapping events during this 3 clock assertion are not separately asserted. If the event gets created at the end of third clock, then next assertion is done from clock 6 covering any other event occurrence until that point
Error Status Handling
Often the signals to be characterized do not have the format or have lag that can affect the measurement counter, for example if measuring pulse width and signal gets stuck at that polarity after first or first few toggles. Or while averaging/accumulating number of counts do not complete and signal gets stuck in active pulse state hence overrunning measurements. Such situations can trigger an event that can assert an interrupt to CPU.BLKERRSTS[SIG_ERR] tracks this and corresponding interrupt registers can be used by CPU to service interrupt.
Once an event is detected, the event is reported to the system either through interrupt event, RTDMA event, and WADI outputs to trigger an event, error status for software debug, or the event gets connected to event trigger for safe state sequencer.
Upon interrupted, the CPU knows which WADI block caused an error and what was the error. The masked interrupt status provides the WADI blocks that triggered error. For each WADI block there is a register that provides the status of which type of event triggered the interrupt. This is stored within BLKERRINFO that can further lead to the exact event type that triggered the error.
The BLKERRINFO register contains information about the first recorded failed count of the signal analysis (BLKERRINFO[ERRNT]) and the type of error (BLKERRINFO[ERRTYPE]).
BLKERRCFG[OVERIDESIGn] are settings used for WADI instances that do not incorporate the SSS. In case the number of event words and sequence words are 0, then OVERIDESIGn give limited flexibility to build the fixed safe states. In cases where SSS components are instantiated, these fields are treated as reserved.