I am having an all pole IIR filter of order 5 with floating point filter coefficients
[1,
-4.708642687,
9.963818327 ,
-11.99038368,
8.647611478,
-3.553230696,
0.659454607].
When an impulse input was applied to the IIR filter, the first 8 output samples obtained were
1,
4.7086,
12.20,
22.5509,
32.38,
36.9400,
32.26087.
To implement the same system in hardware, I have scaled the filter coefficients by a factor of $2^{10}$ and down-scaled back at the output. Similarly all the operations were done in fixed-point representation. However, the first 8 output samples obtained at the output were
1,
5,
14,
29,
49,
70,
86,
91,
82 etc.
How to reduce this large difference in the output when trying to convert from floating point to fixed point