### Converting to State-Space Form by Hand

Converting a digital filter to state-space form is easy because there are various ``canonical forms'' for state-space models which can be written by inspection given the strictly proper transfer-function coefficients.The canonical forms useful for transfer-function to state-space conversion are

*controller canonical form*(also called

*control*or

*controllable canonical form*) and

*observer canonical form*(or

*observable canonical form*) [28, p. 80], [37]. These names come from the field of

*control theory*[28] which is concerned with designing feedback laws to control the dynamics of real-world physical systems. State-space models are used extensively in the control field to model physical systems. The name ``controller canonical form'' reflects the fact that the input signal can ``drive'' all modes (poles) of the system. In the language of control theory, we may say that all of the system poles are

*controllable*from the input . In observer canonical form, all modes are guaranteed to be

*observable*. Controllability and observability of a state-space model are discussed further in §G.7.3 below. The following procedure converts any causal LTI digital filter into state-space form:

- Determine the filter transfer function .
- If is not strictly proper (), ``pull out'' the delay-free path to obtain a feed-through gain in parallel with a strictly proper transfer function.
- Write down the state-space representation by inspection using
controller canonical form for the strictly proper transfer function.
(Or use the matlab function
`tf2ss`.)

- The general causal IIR filter

has transfer function

- By convention, state-space descriptions handle any delay-free
path from input to output via the direct-path coefficient in
Eq.(G.1). This is natural because the delay-free path does not
affect the state of the system.
A causal filter contains a delay-free path if its impulse response
is nonzero at time zero,
*i.e.*, if .^{G.5}In such cases, we must ``pull out'' the delay-free path in order to implement it in parallel, setting in the state-space model. In our example, one step of long division yields

where , with for , and for . - The controller canonical form is then easily written as follows:

An alternate controller canonical form is obtained by applying the similarity transformation (see §G.8 below) which simply reverses the order of the state variables. Any permutation of the state variables would similarly yield a controllable form. The transpose of a controllable form is an observable form.

- The transfer function can be written, by inspection, as

- We need to convert Eq.(G.13) to the form

Obtaining a common denominator and equating numerator coefficients with Eq.(G.13) yields

The same result is obtained using long division (or synthetic division). - Finally, the controller canonical form is given by

**Next Section:**

Converting Signal Flow Graphs to State-Space Form by Hand

**Previous Section:**

Example State Space Filter Transfer Function