
IS COMPARABLE TO:

FEEDBACK NETWORKS

W(z) = X(z) E(z) + Y(z) G(z)
Y(z) =W(z) F(z) = (X(z) E(z) + Y(z) G(z)) F(z)
Y(z) - Y(z) G(z) F(z) = X(z) E(z) F(z)
Y(z) (1 - G(z) F(z)) = X(z) E(z) F(z)




COMBINED IDEAS

POSITIVE FEEDBACK LOOP:
E(z) = 1; F(z) = 1; G(z) = H2(z)H3(z)

PARALLEL/CASCADE COMBINATION
Y(z) = W(z)(H1(z) + H2(z)H4(z))

TRANSPOSED FORMS
1. Rename inputs and outputs.
2. Redraw arrows
3. Rearrange in standard left-right format



H(z) =Y(z)/X(z) = d +z-1 ct (I
- z-1A )-1 b
Transpose Rules:
(A + B)t = At + Bt
Ht (z) = Y(z)/X(z)= d + btz-1(I
- z-1At )-1 c


We want to reach the stage where the following kind
of thinking becomes "automatic"

THEN:...y(n) = 2 y(n-1) - 6 y(n-2) + 3 x(n)

THEN:...y(n) = 3 x(n) - 4 x(n-1) + 5x(n-2)

THEN:...y(n) = 2 y(n-1) - 6 y(n-2) + 3 x(n) - 4 x(n-1)
+ 5x(n-2)
One implementation for:...y(n) = 2 y(n-1) - 6 y(n-2)
+ 3 x(n)


THEN:...y(n) = 2 y(n-1) - 6 y(n-2) + 3 x(n) - 4 x(n-1)
+ 5x(n-2)
IF: H(z) = H1(z)H2(z)

THEN:...v(n) = 3 x(n) - 4 x(n-1) + 5x(n-2)

THEN:...y(n) = 2 y(n-1) - 6 y(n-2) + v(n)

IF:...H(z) = H2(z)H1(z)

THEN:...w(n) = 2 w(n-1) - 6 w(n-2) + x(n)

THEN:...y(n) = 3 w(n) - 4 w(n-1) + 5w(n-2)

OR

OR

THEN:
y(n) = -a1 y(n-1) + -a2 y(n-2)
+ b0 x(n) + b1 x(n-1) + b2x(n-2)
OR: DIRECT FORM II:

COMPARED TO DIRECT FORM I = TRANSPOSE OF DIRECT FORM II

CASCADE FORMS FOR REAL POLYNOMIALS

And if N >= M:
= b0

THEN:
| y1(n) | = -a11 y1(n-1) - a21 y1(n-2) + b0 x(n) + b11 x(n-1) + b21 x(n-2) |
| y2(n) | = -a12 y2(n-1) - a22 y2(n-2) + y1(n) + b12 y1(n-1) + b22 y1(n-2) |
| y3(n) | = -a13 y3(n-1) - a23 y3(n-2) + y2(n) + b13 y2(n-1) + b23 y2(n-2) |
An array of the number of storage nodes might look
like the following;
| k=1 | k=2 | k=3 . | |||
| in | x (n-2) | x (n-1) | x (n) | ||
| out | in | y1(n-2) | y1(n-1) | y1(n) | |
| out | in | y2(n-2) | y2(n-1) | y2(n) | |
| out | y3(n-2) | y3(n-1) | y3(n) |
MATLAB IMPLEMENTATION OF CASCADE FORM
%% clfild97.m file
% SINUSOIDAL INPUT
F = [ 0 0 0; 0 0 0; 0 0 0; 0 0 0];
for n=0:30
x=sample(n);
[y,F] =clfilt97(x,F); % PLUS PLOT STUFF
end;
% IMPULSE INPUT
F = [ 0 0 0; 0 0 0; 0 0 0; 0 0 0];
for n=0:30
x=0;
if n==2, x=2; end;
[y,F] =clfilt97(x,F) %PLUS PLOT STUFF
end;
function y=sample(n);
y=cos(pi/8*n) + cos(6*pi/8*n);
function [y,F] = clfilt97(x,F);
b0=[.0904 .0904 .0904]; b1= 2*b0; b2=b0;
a1=[ -1.268 -1.010 -.9044]; a2= [.7051 .3585 .2155];
F(1,3) = x;
for k=1:3
in=k; out=k+1;
F(out,3)=b0(k)*F(in,3)+b1(k)*F(in,2)+b2(k)*F(in,1)...
- a1(k)*F(out,2) - a2(k)*F(out,1);
end;
y=F(4,3)
pause(1);
for k=1:4
F(k,1)=F(k,2);
F(k,2)=F(k,3);
end;
PARALLEL FORMS/MORE WORK---PARTIAL
FRACTIONS

And there is nothing to keep us from using the following form, grouping real zeros and poles together, and considering zero value coefficients and assuming that M=N:


| THEN: | y1(n) = a11 y1(n-1) + a21 y1(n-2) + e01 x(n) + e11 x(n-1) |
| y2(n) = a12 y2(n-1) + a22 y2(n-2) + e02 y1(n) + e12 y1(n-1) | |
| y3(n) = y1(n) + y2(n) + e0 x(n) |
PROPERTIES OF NETWORK COEFFICIENTS
All factors can have form:
Fi(z) = 1 + c1i z-1
+ c2i z-2 = (1- q1i z-1 )( 1
- q2i z-1)
c1i = -(q1i + q2i
) and c2i = q1i q2i
if c1i 2 > 4 c2i roots are real and
if c1i 2 < 4 c2i
roots are complex conjugatves: q1i = q2i*
= qi
c1i = - 2 Re ( qi) = -2
ri cos (fi)
and c2i = |qi| 2 = ri2
FOR DENOMINATOR FACTORS FOR STABILITY
POLES MUST BE INSIDE THE UNIT CIRCLE:
Di(z) = 1 + a1i z-1
+ a2i z-2 = (1- p1i z-1
)( 1 - p2i z-1)
|p1i z-1 | and | p2i
z-1| < 1 or |a2i | = |p1i
p2i | <1
ALSO CAN BE SHOWN USING:


ZEROS TEND TO BE ON THE UNIT CIRCLE
| Ni(z) | = 1 + b1i z-1 + b2i z-2 = (1- z1i z-1 )( 1 - z2i z-1) |
| = 1 - 2 cos fi z-1 + z-2 | |
| = 1 ± 2 z-1 + z-2 if roots are real and equal. | |
| = 1 - z-2 if roots are real and unequal (-1, +1). | |
| = 1 ± z-1 if roots are real and first order. |
WHERE ARE ROOTS LOCATED IN THE FOLLOWING?
Fi(z) = 1 + 1.414 z-1 + z-2
Fi(z) = 1 + 2 z-1 + z-2
Fi(z) = 1 -.8 z-1 + .64 z-2
Fi(z) = 1 -1.08333 z-1 + 0.25
z-2
BASIC NETWORKS FOR FIR SYSTEMS -
LINEAR PHASE


| h(n) | = {bn for n= 0, 1, ....,M |
| = {0 otherwise |


\
FIRS and LINEAR PHASE DELAY --- THE
REAL ADVANTAGE
Examples: bm = ± b*M-m
for n=0,1,M
IF M IS EVEN and SYMMETRY IS EVEN = TYPE I
IF M IS ODD and SYMMETRY IS EVEN = TYPE II
IF M IS EVEN and SYMMETRY IS ODD = TYPE III
IF M IS ODD and SYMMETRY IS ODD = TYPE IV

ASSOCIATED FREQUENCY RESPONSES

NOTE LINEAR PHASES AND 180o JUMPS

NOTE CONSTRAINTS AT z = 1 and z = -1 (w
= 0 and w
= p)
ALWAYS:

so for odd symmetry cases (III and IV)

Always:

so for types II and III: H(-1) = 0
bm = ± b*M-m is
the same as: h(n) = ± h*(M-m)
or H(z) = ± z -M H*(1/z*) or
z MH(z) = ± H*(1/z*)
WHICH SAYS THAT IF z is a zero, then 1/z* is also
a zero of the function.

TYPE I EXAMPLE WITH REAL NUMBERS
| H(z) | = 1 + 2z-1 + 4z-2 + 2z-3 + z-4 |
| = z-2 (z2 + 2z1 + 4 + 2z-1 + z-2) | |
| = z-2 (z2 + z-2 + 4 + 2z1 + 2z-1) | |
| = z-2 [(z2 + z-2)+ 4 + (2z1 + 2z-1)] |
| or H(ejw) | = e-2jw [(e2jw + e-2jw)+ 4 + (2ejw + 2e-jw) ) |
| or | = e-2jw [2cos2w + 4 + 4cosw ) = e-2jw R(w) |
| < H(ejw) | = -2w + C = -Mw/2 + C |
where C = 0 or ¹ depending on sign of R
which is linear with 180 degree jumps.
We are really trying to constrain what is defined
as a filter's group delay:

NOTE CHANGES IF bs are not real:
TYPE II EXAMPLE
| h(n) | = d(n) + 2d(n-1) + 4d[n-2) + 4d(n-3)+ 2d(n-4) + d(n-5) |
| H(z) | = 1 + 2z-1 + 4z-2 + 4z-3 + 2z-4 + z-5 |
| = z-5/2 (z5/2 + 2z3/2 + 4z1/2 + 4z-1/2 + 2z-3/2 + z-5/2) | |
| =z-5/2 (z5/2 + z-5/2+ 2z3/2 + 2z-3/2 + 4z1/2 + 4z-1/2 ) | |
| H'(w) | =e-5jw/2[(e 5jw/2+e -5jw/2)+2(e 3jw/2+e-3jw/2)+4(ejw/2+e-jw/2)) |
| = e-5jw/2 [2cos5w/2 + 4cos3w/2 + 8cos w/2 ] |
TYPE III EXAMPLE WITH REAL NUMBERS
| H(z) | = 1 + 2z-1 - 2z-3 - z-4 |
| = z-2 (z2 + 2z1 - 2z-1 - z-2) | |
| = z-2 (z2 - z-2 + 2z1 - 2z-1) | |
| = z-2 [(z2 - z-2)+ (2z1 - 2z-1) ) | |
| or H(ejw) | = e-2jw [(e2jw - e-2jw)+ (2ejw - 2e-jw) ] |
| or | = e-2jw [j2sin2w + j4sin w ] = j e-2jw R(w) |
TYPE IIIs are used for differentiators:
NOTE: IDEAL DIFFERENTIATIOR: H'D(w)
= jw
CHECK FIRST DIFFERENCE:
| y(n) | = x(n) - x(n-1) |
| h(n) | = d(n) - d(n-1) |
| H(z) | = 1 - z-1 |
| H(ejw) | = 1 - e-jw |
| H(ejw) | = e-jw/2 (e jw/2 - e-jw/2) |
| = 2 e-jw/2 (jsin w/2) = j(group delay) R(w) | |
| R(w) | = 2 sin w/2 which is approximately w for small w.
|
GENERAL EQUATIONS:





SPECIAL FILTERS
ALLPASS FILTERS: |H(ejw)|
= |H'(w)|
= 1 for all w



If zs is a zero of H(z) then 1/zs is a pole of H(z)
Example:


COMB FILTER -- EVENLY SPACED NOTCHES
Select H(z) and then substitute to get H(zk)
which has a frequency response H(ejwk)
= H'(kw)
Since H'(w)
has a period of 2¹, H'(kw)
has a period of 2p/k.
Example of a simple highpass filter:


has zeros at k roots of 1 and poles at the k roots
of a.
Example for k=6 and a=.3


(POWER) COMPLEMENTARY FILTERS
|H'1(w)|2
+ |H'2(w)|2
= 1 for all w,
equivalently
H1(z) H1(z-1) +
H2(z) H2(z-1) = 1
Example where: H1(z) is lowpass and H2(z)
is highpass.


CRITERIA: H1(z) and H2(z) must be bounded real, ie
|H'i(w)|
<= 1

H1(z)
H1(z-1)
+ H2(z) H2(z-1)
= 1

or: P(z)P(z-1)+
Q(z)Q(z-1)
= D(z)D(z-1)
or: Q(z)Q(z-1)
= D(z)D(z-1)
- P(z)P(z-1)
As many classical filters have all their zeros on
the unit circle,
Q(z)Q(z-1)
will have double zeros on the unit circle.
CAN BE SHOWN: Hi(1)
= 1 and Hi(-1) = 0 , then
there exists allpass filters such that:
H1(z)
= [ A1(z)
+ A2(z) ]/2
H2(z)
= [ A1(z)
- A2(z) ]/2
A1(z)
= H1(z) +
H2(z)
A2(z)
= H1(z) -
H2(z)
First Order Example:
:
H1(1) = 1
and H1(-1) = 0
:
H2(1) = 0
and H2(-1) = 1




Therefore:

