State Machine Model
Our Chebyshev filter design is given by the linear difference equation of the form
y(n) = −a2 y(n-1) − a3 y(n-2) + b1 x(n) + b2 x(n-1) + b3 x(n-2).
We can interpret this difference equation as a state machine.
To get a state machine model, we need to define a state vector s, a matrix A, column vectors b and c and a real number d such that for all n,
s(n+1) = As(n) + bx(n)
y(n) = cTs(n) + dx(n)
A straightforward possibility for the state is
s(n) = [y(n-1), y(n-2), x(n-1), x(n-2)]T.
In this case, we get
A = [-a2, -a3, b2, b3; 1,0,0,0; 0,0,0,0; 0,0,1,0]
b =[b1, 0,1,0]T
cT = [-a2, -a3, b2, b3]
d = b1
(using Matlab notation for the matrix). A more compact state machine description for this system is possible, but that is the subject of a followup course.