ZHCSC70D December 2013 – December 2021 DAC7750 , DAC8750
PRODUCTION DATA
In noisy environments, error checking can be used to check the integrity of SPI data communication between the DACx750 and the host processor. To enable this feature, set the CRCEN bit of the Configuration Register to 1. The frame error checking scheme is based on the CRC-8-ATM (HEC) polynomial x8 + x2 + x + 1 (that is, 100000111). When error checking is enabled, the SPI frame width is 32 bits, as shown in Table 8-2. Start with the default 24-bit frame, enable frame error checking, and then switch to the 32-bit frame. The normal 24-bit SPI data are appended with an 8-bit CRC polynomial by the host processor before feeding to the device. For a register readback, the CRC polynomial is output on the SDO pins by the device as part of the 32-bit frame.
BIT 31:BIT 8 | BIT 7:BIT 0 |
---|---|
Normal SPI frame data | 8-bit CRC polynomial |
When in CRC mode, the DACx750 calculates CRC words every 32 clocks, unconditional of when the LATCH pin toggles. The DACx750 decodes the 32-bit input frame data to compute the CRC remainder. If no error exists in the frame, the CRC remainder is zero. When the remainder is non-zero (that is, the input frame has single- or multiple-bit errors), the ALARM pin asserts low and the CRC-FLT bit of the status register is set to 1. The ALARM pin can be asserted low for any of the different conditions explained in Section 8.3.7. To reset the CRC-FLT bit to 0, either issue software reset command of 0x96, disable the frame error checking, or power down the device. In the case of a CRC error, the specific SPI frame is blocked from writing to the device.
If CRC mode is enabled on the first frame issued to the device after power up, issue a no operation, or NOOP, command to the device in order to reset the SPI clock and SPI frame alignment in the event that any transients on the SCLK line are interpreted as SCLK periods. A NOOP command can be issued to the device by simply toggling the LATCH pin without any SCLK periods.