SBASB74 October 2024 ADS127L21B
PRODUCTION DATA
The FIR3 filter uses either the preset or programmable coefficients. The FIR3 filter has a bypass option, including bypassing of the filter x2 decimation. Figure 7-13 shows the structure of the FIR3 filter.
The FIR3 filter consists of 128 taps using fixed divide-by-2 decimation to perform the final data rate reduction. The coefficients are 32-bit integer values in signed 1.31 format with the MSB as the sign bit. This bit represents the decimal range of –1 (80000000h) to 1 – 1/231 (7FFFFFFFh). The coefficients are typically designed to sum to unity for 0dB gain in the pass band. Pad the end coefficients with zero values if fewer taps are used.
Because the ADC uses 128 taps, latency time of the first conversion is 75 / fDATA + 16 / fCLK, compared to 68 / fDATA + 16 / fCLK for the preset coefficients. The group delay of the filter, however, is determined by the design of the filter coefficients.
The FLTR_OSR[4:0] register bits program the overall OSR and final data rate of the wideband filter. FLTR_SEL[2:0] register bits = 000b selects the default coefficient operation and 111b selects the programmable coefficient operation. See the FILTER1 register for details.
The programmable coefficients of the FIR3 filter are written to the FIR_BANK register. The register is a single address (address 13h) that stores 512 bytes of the 128 coefficient values. To read or write the coefficients, repeat the read or write operation to the same register address. The device automatically increments a memory pointer to the next internal memory location after completion of each read or write operation. As given in Table 7-8, the first byte of the operation is the MSB of the 127th coefficient (h127), followed by MSB-1, MSB-2, and LSB bytes. The next byte is the MSB of the 126th coefficient, and so on. The last byte (byte 512) of the read/write operation is the LSB of coefficient h0. Any register address change during the read or write operation to another address resets the coefficient pointer to the first memory location (MSB of h127). If an SPI CRC error occurs during the write operation, clear the SPI_ERR bit of the STATUS1 register. This process restarts the coefficient read or write operation at the beginning.
A minimum 10 × tCLK delay time is required between SPI frames when reading or writing filter coefficients. Synchronize the ADC after writing the filter coefficients.
FIR3 COEFFICIENT | BYTE SEQUENCE | BYTES |
---|---|---|
h127 | 1, 2, 3, 4 | MSB, MSB-1, MSB-2, LSB |
h126 | 5, 6, 7, 8 | MSB, MSB-1, MSB-2, LSB |
··· | ··· | ··· |
h0 | 509, 510, 511, 512 | MSB, MSB-1, MSB-2, LSB |