EE518 Digital Signal Processing University of Washington Autumn 2001 Dept. of Electrical Engineering Lecture 14: Minimum Phase Systems and Linear Phase Nov 19, 2001 Prof: J. Bilmes <bilmes@ee.washington.edu> TA: Mingzhou Song <msong@u.washington.edu> 14.1 Partial Review Consider H(z) = z 1 a 1 az 1 with a pole at z = a and a zero at z = 1 a. Fig 14.1 explains why all pass in the above form has unity magnitude. v b v a v c 1 a PSfrag replacements v b a v a v c Note in Fig 14.1 Figure 14.1: Geometric view of magnitude of all pass systems. v a v a = v b v b = v c v = const ω c So normalize magnitude response, by this constant to get unity gain everywhere. H(e jω ) = e jω a 1 ae jω = e jω 1 a e jω 1 ae jω = H(e jω ) = 1 since unity magnitude of e jω and complex conjugate of numerator & denominator. Cascade form of all pass system for real-valued impulse response system (i.e., conjugate symmetric H(e jω )) can be written as M r z H ap (z) = A 1 M d c k (z 1 d k z 1 e k )(z 1 e k ) 1 (1 e k z 1 )(1 e k z 1 ) 14-1
14-2 where complex poles paired with their conjugates. For causal & stable, need d k < 1 and e k < 1. Ex: An all pass system is shown in Fig 14.2. Figure 14.2: The pole/zero diagram of an all pass system. So numerator & denominator are mirror image of each other. Note: If with M = 2M c + Mr poles/zeros, then for causal all-pass systems. Note group delay of all pass system is [ e jω re jθ grd 1 re jθ e jω ] = H ap (z) = N(z) O(z) N(z) = z M O(z 1 ) 1 r 2 1 + r 2 2r cosω θ = 1 r 2 1 re jθ e jω 2 For stable & causal systems, r < 1. This has implication to continuous phase for 0 ω π. Also so arg[h ap (e j0 )] = 0 So integrating a positive quantity arg[h ap (e jω )] = H ap (e j0 ) = A w M r 0 grd[e jφ ]dφ + arg[h ap (e j0 )] 1 d k 1 d k arg[h ap (e jω )] 0 M l 1 e k 2 1 e k 2 = A 0 ω < π Therefore, for all causal pass systems group delay is positive and continuous phase is non-positive. Application: Delay equalization. input G(z) H ap (z) output When G(z) has a prescribed magnitude response, but arbitrary phase G(e jω ) we can compensate the phase of G(e jω ) with H ap (e jω ) so that the phase is linear in region where we need it to be, i.e., we could have linear phase delay in region between ω l and ω h if that is what we choose.
14-3 14.2 Minimum Phase Systems Definition 14.1 (Minimum phase systems). H(z) is minimum phase if all zeros & poles within unit circle. The definition of minimum phase systems implies they are stable and causal. It also suggests that H i (z) = 1 H(z) has poles/zeros within unit circle. Therefore the inverse of a minimum phase system is another minimum phase system which is causal and stable. Recall the magnitude response of C(z) = H(z)H (1/z ) of a system couldn t uniquely determine H(z). But if H(z) is minimum phase, H(z) can be determined from C(z) uniquely. For rational form of H(z), it can be decomposed into two parts H(z) = H min (z)h ap (z) Where H min (z) is minimum phase with same magnitude as H(z) but different phase; H ap (z) has unity magnitude but non-zero phase. How? frag replacements = Same can be done for poles. H(z) H min (z) H ap (z) We can express the process in equations. Suppose H(z) has a zero at z = 1/c outside unit circle. All other poles/zeros are inside. H(z) = H 1 (z)(z 1 c ) = H 1 (z)(z 1 c ) 1 cz 1 1 cz 1 = [H 1 (z)(1 cz 1 )] z 1 c 1 cz 1 = H min (z)h ap (z) Since H min (z) has zero reflected into z = c H ap (z) has zero at z = 1/c, pole at z = c
14-4 In general, we have H(z) = H min (z)h ap (z) when H ap (z) has all of H(z) s zeros outside unit circle and poles at reflected locations insides unit circle, and H min (z) has reflected zeros inside unit circle. Ex: Distortion compensation in magnitude response & frequency response. Here we assume zeros not on unit circle. s[n] H d (z) s d [n] H d (z) is distortion, modeled by an LTI rational system response. Say H d (z) = H min,d (z)h ap,d (z) H min,d (z) has an inverse H i min,d (z) = 1/H min,d(z) Add additional H ap,comp (z) to create linear phase in regions of interest (i.e., uniform delay across all frequencies). The resulting compensation system is s d [n] 1 H min,d (z) H ap,comp (z) ŝ[n] So Ŝ(e jω ) = S(e jω ) Hopefully we can get arg[ŝ(e jω )] = arg[s(e jω )] + αω where αω is linear phase frequency, i.e., a constant group delay. The following subsection explains why minimum phase systems deserve their name. Minimum Phase Lag where arg[h ap (e jω )] < 0 for 0 ω π. H(z) = H min (z)h ap (z) arg[h(e jω )] = arg[h min (e jω )] + arg[h ap (e jω )] In going from H min (z) to H(z) (reflecting zeros from inside unit circle to outside), the phase decreases or the phase-lag (negative of the phase) increases. Recall phase lag or phase delay is defined as τ ρ (ω) = θ(ω) ω. Therefore we should call this minimum phase lag or minimum phase delay. Note the effect on group delay where grd[h ap (e jω )] > 0 for 0 ω π. grd[h(e jω )] = grd[h min (e jω )] + grd[h ap (e jω )] This means grd[h min (e jω )] is the smallest in terms of possible systems with same magnitude.
14-5 minimum phase maximum phase unit circle PSfrag replacements Figure 14.3: Zeros/poles of four different phase systems. Minimum Energy Delay Ex: Consider these four systems shown in Fig 14.3. (HW problem O&S 5.66) For causal h[n], even though they all have the same energy since h[0] h min [0] h[n] 2 = 1 2π = 1 2π π π π π H(e jω ) 2 dω H(e jω ) 2 dω = The minumum energy delay comes from the following inequality M h[n] 2 M h min [n] 2 h min [n] 2
14-6 14.3 Linear Phase if α = n d is an integer H(e jω ) = e jωα ω < π H(e jω ) = 1, H(e jω ) = ωα, grp[h(e jω )] = α h[n] = sinπ(n α) π(n α) h[n] = δ[n n d ] < n < if α is not an integer, then this become a non-integer delay, equivalent to conversion to continuous time, delaying and resampling. h(t) = δ(t αt ) H( jω) = e jωαt or that H(e jω ) = e jωα Also, can use this for non-constant magnitude response, i.e., { H l p (e jω e jωα ω < ω ) = c 0 ω c < ω < π and Note symmetric about n d, an integer implies h l p [n] = sinω c(n α) π(n α) = h[n] = h[2n d n] h[n d + k] = h[n d k] = h[2n d (n d + k)] Similarly Symmetric about α = n d + 0.5 for some integer n d implies h[n] = h[2α n] The above is not general true for arbitrary α. Recall: h[n] real, even = H(e jω ) even, real. If we delay h[n], what happens? H(e jω ) is not real any longer and is manifests itself in linear phase. Ex: if α = n d is an integer { H l p (e jω e jωα ω < ω ) = c 0 else if α = n d + 0.5 and n d is an integer h l p [n] = sinω c(n n d ) π(n n d ) = h l p [2n d n] = symmetric about n = n d h l p [n] = h l p [2n d n] if α = n d + c, c 0.5 or 0, h l p [n] is not symmetric about anything but still have linear phase αω.