SBASAE3 December 2025 ADS125H18
PRODUCTION DATA
Overflow of the FIFO buffer occurs when the write pointer reaches the read pointer, and the FIFO is full. As soon as the write pointer reaches the read pointer, the FIFO_OFn flag in the FIFO_SEQ_STATUS register is set to 0b, indicating that overflow occurred. Subsequently, any additional write operations are ignored by the FIFO, thus additional conversion results are not stored in the FIFO until another read operation frees up memory space. This can lead to discontinuities in the signals acquired. In the overflow condition, the value of the FIFO_DEPTH indicator exceeds the size of the FIFO buffer. Write 1b to clear the FIFO_OFn bit to 1b.
Figure 7-18 illustrates an example for an overflow of the FIFO buffer. Initially four free data words are available in the FIFO in this example. A FIFO read operation results in five free data words available. Subsequently, the ADC captures six conversions, but the FIFO only stores the first five conversion results due to overflow. As soon as the fifth conversion result is stored in the FIFO, overflow occurs and the sixth conversion result is lost.
Typically overflow occurs when, on average, data is written faster to the FIFO than retrieved from the FIFO.
Underflow of the FIFO buffer occurs when the read pointer reaches the write pointer, and the FIFO is empty. As soon as the read pointer reaches the write pointer, the FIFO_UFn flag in the FIFO_SEQ_STATUS register is set to 0b, indicating that underflow occurred. Subsequently, any additional read operations result in the same data output. The same conversion result is read multiple times, until new data is written to the FIFO. In an underflow condition, the read pointer does not increment to the next address when a new read command is issued. In the underflow condition, the value of the FIFO_DEPTH indicator is 000000000b. Write 1b to clear the FIFO_UFn bit to 1b.
Figure 7-19 illustrates an example for an underflow of the FIFO buffer. Initially, five data words are stored in the FIFO and available for read (ADC samples #1 to #5). A FIFO read operation results in four data words available for read (ADC samples # to #5). Subsequently, five read commands are executed, however after reading the last available data word (ADC sample #5), underflow occurs and the last data word is read twice as the FIFO is empty.
Typically underflow occurs when, on average, data is written slower to the FIFO than retrieved from the FIFO.
However note that for the ADS125H18, whenever samples have been stored in the FIFO after a FIFO reset (for example by setting and resetting the FIFO_EN bit), the FIFO_UFn does not indicate an underflow condition correctly. Only when no samples have been stored in the FIFO buffer after the reset, and the FIFO read operation is attempted, only then the FIFO_UFn triggers correctly to report the underflow condition.