Skip to main content

Direct form and lattice of FIR, 1+0.7z⁻¹+1.2z⁻²−z⁻³

Short answer

Direct form: y[n]=x[n]+0.7x[n-1]+1.2x[n-2]-x[n-3] with 3 delays. Lattice: K3=-1, but step-down fails because 1-K3^2=0 and coefficients are not antisymmetric, so no finite K1,K2 exist; only direct form implementation is possible.

Draw the direct form and lattice structure of a filter with system function H(z) = 1 + 0.7z⁻¹ + 1.2z⁻² − z⁻³.

Direct form

H(z) = 1 + 0.7z⁻¹ + 1.2z⁻² − z⁻³, so y[n] = x[n] + 0.7x[n−1] + 1.2x[n−2] − x[n−3].

x[n] ─┬──►[z⁻¹]──┬──►[z⁻¹]──┬──►[z⁻¹]──┐
      │          │          │          │
     ×b0        ×b1        ×b2        ×b3
      │          │          │          │
      └──►(+)◄───┘          │          │
           └───►(+)◄────────┘          │
                    └────►(+)◄─────────┘
                            │
                            ▼
                          y[n]

with b0 = 1, b1 = 0.7, b2 = 1.2, b3 = -1. Output: y[n] = b0x[n] + b1x[n−1] + b2x[n−2] + b3x[n−3]; 3 delays, 4 multipliers, 3 adders.

Lattice structure

Order M = 3, a₃(1) = 0.7, a₃(2) = 1.2, a₃(3) = −1. The last reflection coefficient is

K₃ = a₃(3) = −1

The step-down formula divides by 1 − K₃² = 0, and the numerator for i = 1 is a₃(1) − K₃a₃(2) = 0.7 + 1.2 = 1.9 ≠ 0, so K₂ would be infinite. Check by building the filter up from a lattice: A₃(z) = A₂(z) + K₃z⁻³A₂(z⁻¹) with A₂ = 1 + a₁z⁻¹ + a₂z⁻² gives the coefficients {1, a₁ + K₃a₂, a₂ + K₃a₁, K₃}. With K₃ = −1 this is {1, a₁ − a₂, a₂ − a₁, −1}, which needs the z⁻¹ and z⁻² coefficients to be negatives of each other; here they are 0.7 and 1.2.

Conclusion: because |K₃| = 1 and the coefficients are not (anti)symmetric, this H(z) has no finite lattice coefficients K₁, K₂ (the FIR lattice requires |K| ≠ 1 at the last stage). K₃ = −1 is the only coefficient that can be stated; the lattice stage for m = 3 is

f3(n) = f2(n) − g2(n−1)
g3(n) = −f2(n) + g2(n−1)

and the filter must be implemented in the direct form drawn above. (If the last coefficient were not ±1, say a₃(3) = k with |k| < 1, the usual step-down procedure and the stage diagram of the lattice below would apply.)

One stage of the lattice (for reference, repeated for m = 1, 2, 3):

f(m-1)[n] ──────●────────────────────(+)──► f(m)[n]
                │         ┌───────────▲
                │ Km      │ Km
                └─────────┼───────────┐
                          │           │
                          │           ▼
g(m-1)[n] ─[z⁻¹] ─────────●──────────(+)──► g(m)[n]

✓ Answer checked by Claude Opus 5.5 (high effort)

All Digital Signal Analysis and Processing chapter 4 questions →