EE 225A Digital Signal Processing Supplementary Material 1. Allpass
Total Page:16
File Type:pdf, Size:1020Kb
EE 225A — DIGITAL SIGNAL PROCESSING — SUPPLEMENTARY MATERIAL 1 EE 225a Digital Signal Processing Supplementary Material 1. Allpass Sequences A sequence ha()n is said to be allpass if it has a DTFT that satisfies jw Ha()e = 1 . (1) Note that this is true iff jw * jw Ha()e Ha()e = 1 (2) which in turn is true iff * ha()n *ha(–n)d= ()n (3) which in turn is true iff * 1 H ()z H æö---- = 1. (4) a aèø* z For rational Z transforms, the latter relation implies that poles (and zeros) of Ha()z are cancelled * 1 * 1 by zeros (and poles) of H æö---- . In other words, if H ()z has a pole at zc= , then H æö---- must aèø a aèø z* z* have have a zero at the same zc= , in order for (4) to be possible. Note further that a zero of * 1 1 H æö---- at zc= is a zero of H ()z at z = ----- . Consequently, (4) implies that poles (and zeros) aèø a z* c* PROF. EDWARD A. LEE, DEPARTMENT OF EECS, UNIVERSITY OF CALIFORNIA, BERKELEY EE 225A — DIGITAL SIGNAL PROCESSING — SUPPLEMENTARY MATERIAL 2 have zeros (and poles) in conjugate-reciprocal locations, as shown below: 1/c* c Intuitively, since the DTFT is the Z transform evaluated on the unit circle, the effect on the mag- nitude due to any pole will be canceled by the effect on the magnitude of the corresponding zero. Although allpass implies conjugate-reciprocal pole-zero pairs, the converse is not necessarily true unless the appropriate constant multiplier is selected to get unity magnitude. Consider the Z trans- form of the form z–1 – c* Ha()z = ------------------- . (5) 1 – cz–1 This has a pole at c and a zero at 1/c* , as shown in the above figure. It is easy to verify that it is allpass, so an allpass Z transform may consist of the product of any number of such terms. Any non-unity multiplier on (5) would prevent this from being allpass, by the definition in (1). Note further that a “pure delay” term z–M for M > 0, which is obviously allpass, has M poles at zero and M zeros at infinity, so it automatically satisfies the allpass property. So does a “pure ad- vance” term zM for M > 0. A transfer function of the form z–N +a*z–1N + ++... a* H ()z =zM -----------------------------------------------------------1 N (6) a –1 –N 1 +a1z ++... aNz is a product of a pure delay or advance term and terms of form (5), and hence is allpass. Conversely, in order to have pole-zero pairs at conjugate reciprocal locations, and unity magnitude on the unit circle, any rational allpass Z transform must have form (6). This can also be written Az() Ha()z = -------------------------------- (7) zNM– A*æö-----1 èøz* where * * N Az()= 1 +a1z ++... aN z . (8) PROF. EDWARD A. LEE, DEPARTMENT OF EECS, UNIVERSITY OF CALIFORNIA, BERKELEY EE 225A — DIGITAL SIGNAL PROCESSING — SUPPLEMENTARY MATERIAL 3 Evaluating this at ze= j w it is easy to directly verify that (7) is allpass. Note that there is no need for the allpass filter to be causal for it to be stable. It can have poles at infinity, with corresponding zeros at zero. It can also have poles anywhere outside the unit circle, as long as there is a corresponding zero at the reciprocal-conjugate location. 2. Minimum-Phase Sequences Definition: The sequence hm()n with rational Z transform Hm()z is minimum phase if it: 1. is stable, 2. is causal, and 3. has all zeros inside or on the unit circle. Be careful with zeros at infinity, as introduced for example by an uncanceled z–1 term, which make a sequence non-minimum phase. The sequence is strictly minimum phase if it is minimum phase and also has no zeros on the unit circle. An LTI system is said to be minimum phase if its impulse response is a minimum-phase sequence. Importance: A strictly minimum-phase system has a stable, causal, and minimum-phase inverse. This is easily seen by observing that the poles of the inverse are zeros of the system, and zeros of the inverse are poles of the system. Fact: Any stable rational Z transform Hz() can be factored into a cascade of a minimum-phase and an allpass Z transform, Hz()= Ha()z Hm()z . (9) Proof is by construction: Locate the poles and zeros of Hz(). Assign all those inside the unit or on the unit circle to Hm()z . For each zero (or pole) outside the unit circle at location c , assign to * * Hm()z a zero (or pole) at 1/c . Then assign a pole (or zero), to cancel this zero (or pole), at 1/c PROF. EDWARD A. LEE, DEPARTMENT OF EECS, UNIVERSITY OF CALIFORNIA, BERKELEY EE 225A — DIGITAL SIGNAL PROCESSING — SUPPLEMENTARY MATERIAL 4 to Ha()z , and a zero (or pole) at c to make the filter allpass. In pictures, Hz() Ha()z Hm()z = Then select the constant multipliers so that Ha()z is allpass. Notice in the above example that hn() is not real (because the poles and zeros are not in complex-conjugate pairs), and furthermore it is not causal (because if it is stable, the ROC is annular). Consequently, the allpass filter is also not causal. –1 Key idea: The minimum-phase filter has an inverse Hm ()z that has the inverse magnitude frequen- cy response of Hz(). If Hz() has no zeros on the unit circle, then Hm()z will be strictly minimum –1 phase, so Hm ()z will be stable, causal, and minimum phase. Hence, the factorization in (9) allows us to invert any magnitude frequency response, as long as there are no zeros on the unit circle. 3. Real-Valued Discrete-Time Fourier Transforms The DTFT He()j w of a sequence hn() is real iff He()j w = H*()ej w (10) which is true iff hn() is conjugate-symmetric, hn()= h*()–n . (11) Taking Z transforms on both sides, we see that He()j w is real-valued iff 1 Hz()= H*æö----- . (12) èøz* Since He()j w is real, the phase modulo p is zero, so hn() is sometimes called a zero-phase se- PROF. EDWARD A. LEE, DEPARTMENT OF EECS, UNIVERSITY OF CALIFORNIA, BERKELEY EE 225A — DIGITAL SIGNAL PROCESSING — SUPPLEMENTARY MATERIAL 5 quence. Note, however, that this terminology ignores the ambiguity of multiples of p. Equation (12) implies that if there is a zero at zc= , then there is also a zero at z = 1/c*. Simi- larly, if there is a pole at zd= , then there is also a pole at z = 1/d*, as shown in the following diagram: 1 ----- -----1 * d c* d c Note that this not the same type of symmetry encountered for allpass sequences, which had pole- zero pairs at conjugate-reciprocal locations. These symmetry relationships also apply to poles and zeros at zero and infinity. A factor zM for M ¹ 0 in a Z transform introduces M zeros (or poles) at z = 0 without matching zeros (or poles) at z = ¥ , so a zero-phase Z transform cannot have such a term. Correspondingly, except for the trivial case Hz()= 1 , a zero-phase sequence is neither causal nor anticausal. Any poles at zero must be matched by an equal number of poles at infinity. Although a real-valued DTFT implies pole-pole and zero-zero pairs at conjugate-reciprocal loca- tions, note that the converse is not true unless the multiplicative constant is carefully selected. Consider the following example, Hz()= ()1 – cz–1 ()1 – c*z . (13) This has a zero at zc= and a zero at z = -----1 . It also has a pole at zero (due to the first factor) and c* a pole at infinity (due to the second factor). The general form of this example can be written * 1 Hz()= Az()A æö---- (14) èø* z Evaluating this on the unit circle we see that 2 He()jw ==Ae()jw A*()ejw Ae()jw , (15) which is not only real, but also non-negative. A related example, Hz()= –1()1 – cz–1 ()– c*z (16) is real, but not non-negative on the unit circle. A product or ratio of some number of terms of forms PROF. EDWARD A. LEE, DEPARTMENT OF EECS, UNIVERSITY OF CALIFORNIA, BERKELEY EE 225A — DIGITAL SIGNAL PROCESSING — SUPPLEMENTARY MATERIAL 6 (13) and (16) will be real on the unit circle, but is not necessarily non-negative. 4. Linear-Phase Sequences Suppose Fe()j w = e–jwtHe()j w (17) where He()j w is real. Then ÐF()ej w = wt modulo p, (18) so fn() is called a linear-phase sequence. Again, the terminology ignores the ambiguity of mul- tiples of p. If t = N is an integer, then Fz()= z–NHz() (19) so that fn()= h()nN– . (20) This might take a two-sided finite sequence hn() and make a causal version. 5. Positive Semi-Definite Sequences The sequence hn() with DTFT He()j w is said to be positive semi-definite (or non-negative defi- nite) if He()j w is real and He()j w ³ 0 . (21) As with any zero-phase sequence, a pole (or zero) at c implies a pole (or zero) at 1/c* . However, now we also have the stronger result that zeros or poles on the unit circle must be double. Theorem: If the sequence hn() has a real-valued DTFT He()jw and rational Z transform Hz(), then zeros or poles on the unit circle must be double.