Numerically Stable IIR filter I am making an IIR Filter and I am running into problems with stability with higher orders. The values go off to infinity as soon as it starts.

So far, I've been using MATLAB to generate my filters and then running them in an embedded system. I'm using a band-pass filter, state-space representation and single precision values. If I understand this correctly, the issues happens because the poles are getting too close to the unit circle, so the rounding errors on my coefficients or state space are getting out of hand.

I could reduce the order, but that feels wasteful when I have the computational power to run a higher order filter. Is there a filter design that will improve at a higher order while giving the poles a good margin?

Alternatively, Is there another trick I can use to mitigate this issue?
First of all, what is the order of your IIR filter? The highest order I have ever used was an order-10 IIR filter for a control loop application. I feel like it is unlikely that you need more that this.

Second, it is a good idea to split your filter in second-order-sections (SOS) and cascade them , this usually fix most issues. 

https://www.dsprelated.com/showarticle/1137.php

You can also split your filter in second-order-sections and put them in parallel and add their ouputs too.