I have read in my textbook and i don't understand this part, that the Direct Form II implementation of an IIR filter is a bit tricky in memory addressing.There is need of clever memory addressing. Memory is the place that we store partial summations(states of the filter). Anyone that understands the problem and explain to me?


The tricky part tends to be time shifting the state variables. You try to avoid spending extra cycles on explicitly doing this but ideally this can be all kept in registers or just happens during the natural flow of the instructions. The best way to do this will highly depend on your instruction set and/or specific capabilities of the hardware.

In general Direct Form II is a poor choice. The transfer function between the input and the state variables is vine solely through the poles which leads frequently to stability and noise problems. Transposed Form II is almost always the better choice. Only exception would be a fixed point processor with a double precision accumulator in which Direct Form I would be the preferred choice.

  • $\begingroup$ "is vine solely"? $\endgroup$
    – endolith
    Apr 24 '13 at 19:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.