Chunhao,
When the DATACLK_gone alarm or FIFO collision alarm occurs, there are two possible errors:
1. DATACLK/DACCLK ratio does not match the interpolation setting.
2. DATACLK becomes interrupted in the past.
For error #1, it seems like you have the right configuration for 8x interpolation (i.e DATACLK = 100MHz, DACCLK = 400MHz). For error #2, if at any time the DATACLK becomes interrupted, even for a brief moment, the alarm will trigger. Please try to clear the alarms in CONFIG5 to see if alarm persists. If so, please check both the clocks on the FPGA and also the DACCLK source to make sure clocks are stable at all time.
Check out the follow app note for detail:
http://www.ti.com/lit/pdf/slaa585
http://www.ti.com/lit/pdf/slaa584
-Kang