Innite Impulse Response Filters Lecture by Prof Brian L Evans Slides by Niranjan Damera-Venkata Embedded Signal Processing Laboratory Dept of Electrical and Computer Engineering The University of Texas at Austin Austin, TX 787-84 http://signaleceutexasedu
Introduction ffl Background ffl Bounded Input, Bounded Output (BIBO) stability of quarter-plane IIR lters ffl Not all output masks are recursively computable: Figure Figure : Two examples of not recursive computable masks
Background ffl -D difference equations y(n ;n ) = X r X ffl Input and output masks a(n r ;n r ) x(r ;r ) X r X b(n k ;n k ) y(k ;k ) k 6=n k 6=n a(n ;n ) is called the support of the input mask b(n ;n ) is called the support of the output mask Angle of support : minimum angle enclosing support of mask y(n ;n ) is computed as in Figure Weight + - and + n Sum Weight and Sum n n Figure : Recursive computation What degrees of freedom exist for moving the output mask? What must the boundary conditions be? 3
Recursive Computation ffl Consider a four-tap all-pole IIR lter to be passed over an N N image in a raster scan fashion, eg in Floyd-Steinberg error diffusion halftoning ffl What are the boundary conditions? ffl How many rows of the image do we need to keep in memory at one time? ffl What parallelism exists if any? ffl What is the tradeoff between the amount of parallelism exploited and memory? 4
Recursive Computability ffl Recursive computability: Computing the difference equation using known values of the shifted output samples and initial conditions Support of output mask Initial conditions Λ Initial conditions must be, and must lie outside the support of the output sequence, for the lter to be Linear Shift Invariant (LSI) Order of recursion ffl Types of recursively computable masks Quarter-plane masks: supported in a quadrant in < Non-Symmetric Half Plane (NSHP): supported in a half-plane in < ffl Not all possible orderings are equivalent Amount of storage Degree of parallelism 5
Boundary Conditions ffl For a recursive system, how do you choose the boundary conditions If the system is to be LTI, the initial conditions must be zero outside the support of the lter ffl Example: y[n ;n ]=y[n ;n ]+y[n +;n ] + x[n ;n ] Now assume a different set of boundary conditions: Figure 3 n n n 4 35 56 84 3 6 5 8 3 4 5 6 n Figure 3: Boundary conditions (left) Response of y[n ;n ]tof[n ;n ] (right) Response to f[n ;n ]: Figure 3 Response to f[n ;n ]: Figure 4 This is a shifted version of the above: consistent with support of the impulse response Let's begin guessing at some boundary conditions: Figure 4 Calculated response to f[n ;n ]: Figure 5 6
n n 3 6 5 3 4 5 n n Figure 4: Response of y[n ;n ] to f[n ;n ] (left) Another boundary condition (right) n n 5 4 8 48 75 5 9 4 3 4 5 n 5 9 4 3 4 5 n Figure 5: Response of y[n ;n ] to f[n ;n ] (left) Response of y[n ;n ] to f[n ;n ] (right) Response to f[n ;n ]: Figure 5 Note: This is not a shifted version of the response f[n ;n ]: These boundary conditions do not lead to an LTI system 7
The Transfer Function H(z ;z ) = X n X h[n ;n ]z n z n n ffl The z-transform will not converge for all values of (z ;z ) ffl If it converges for z = e j!, z = e j!, then the Discrete-Time Fourier Transform exists and the system is stable jz j = and jz j =)Unit Bicircle Properties of the z-transform ffl Separable Signals: v[n ] w[n ] () V (z ) W (z ) ffl Linearity ffl Shift ffl Convolution ffl Linear mapping (look familiar?) x[n ;n ] = 8 >< >: IL JK 6= X(z ;z ) = W(z I zk ;zj zl ); w[m ;m ] n = Im + Jm ;n =Km + Lm otherwise 8
Z-transform of Linear Mappings ffl Linear mapping x[n ;n ] = 8 >< >: IL JK 6= X(z ;z ) = W(z I zk ;zj zl ) w[m ;m ] n = Im + Jm ;n =Km + Lm otherwise ffl Notice the regular insertion of zeros ffl This is upsampling by upsampling matrix where det R = IL JK 6= R = 4 I J K L 3 5 ffl Frequency response X(!) of an upsampler to input W (!) X u (!) =X(R t!) ffl Let z = e j! and z = e j! X(z ;z )=W(z I zk ;zj zl ) X(e j! ;e j! )=W(e ji! e jk! ;e jj! e jl! ) R t = 3 4 I K 5 J L 9
Inverse z-transform x[n ;n ] = X(z ;z ) = I I (ßj) c az bz ffl Choose ROC that includes the unit bicircle x[n ;n ] = = = I I (ßj) c I (ßj) c X(z ;z )z n z n dz dz c c Ic jaj + jbj» n z z n dz dz z z az bz z b zn z n z az I (ßj) c z b zn I z b c dz dz n z z az dz dz z b ffl The inner integral (with respect to z ) is the inverse z-transform of a az rst-order system with a pole at z b x[n ;n ] = I n z n az u(n )dz ßj c z b z b = a n I n z +n u[n ] ßj c (z b) dz n + = (n + n )! a n b n u[n ;n ] n!n! ffl What does this tell us about other examples? very little ffl Consider an example: H(z ;z ) = az bz cz z B(e j! ;z ) = ae j! bz ce j! z
Setting B(e j! ;z )=andsolving gives z = b + ce j! ae j! This is a bilinear transformation which must map circles into circles Locus A B Figure 6: Bilinear transform Point A! = ß z = b c +a Point B! = z = b+c a b c +a < b+c a < From the other part of the locus a c +b < a+b b <