FIR filter output result Interpretation While input is taken from ADC161S626: 16 bit
Defining Vin as (+IN) - (-IN).

This is a Bi-Polar ADC with the output in 2's Complement Format. In 2's complement the MSB is considered to be negative, specifically a value of -32768 for a 16bit number. This gives a range of 0 to 32767d  for positive inputs and 65535d to 32768d for negative inputs. Or in binary 0 to 0111111111111111  for 0 to positive fullscale and 1111111111111111 to 1000000000000000 for -1LSB to negative fullscale.

The gain from your ADC voltage (Vin) to data output is: 

D =  Vin/Vref * 2^(n-1)   for positive Vin

D =  (Vref+Vin)/Vref * 2^(n-1) + 2^(n-1)  for negative Vin

So in your case (assuming a positive Vin)  D = Vin/2.96 * 2^(15) so for Vin=1V  D = 1/2.96 * 2^15 = 11070d   and any ADC value >= 32768 is negative (i.e. -IN > +IN)

When you apply this to the FIR filter there is a gain factor associated with the filter taps. Remember the transfer function is: sum(x*h) where x is the input data sequence and h is the coefficient sequence so the DC gain is sum(h). For your example that's 25980d (by my calculation).

So applying 1V to the ADC (differentially) gives 11070d at ADC output and 11070 * 25980 = 287598600  at the output of the FIR.

Or working backwards:
Vin = FIR_output/25980 * 2^(-15) * 2.96

e.g.  for FIR_output = 413365728

Vin = 413365728/25980 * 2^(-15) * 2.96 = 1.437V