NivaarExam PrepOfficial exam papers ↗

22-Elec-B1 Digital Signal Processing · May 2013

Question 2 of 5: Transfer function from a pole/zero plot and multiplier-free realisations

Nivaar worked solution (AI-drafted; not reviewed by a licensed engineer)

Notes on this paper

Paper format. National Exams, 07-Elec-B1 Digital Signal Processing, May 2013. Three hours; closed book with one two-sided aid sheet and an approved calculator. Five questions of 25 marks each are printed and four questions constitute a complete paper (the first four appearing in the answer book are marked). All five are solved here, because the set is intended as a study resource rather than as a timed attempt.

Reference texts (07-Elec-B1 syllabus). A. V. Oppenheim and R. W. Schafer, Discrete-Time Signal Processing, 3rd ed. (Pearson) — the primary reference for this exam code; J. G. Proakis and D. G. Manolakis, Digital Signal Processing: Principles, Algorithms and Applications, 4th ed.; S. K. Mitra, Digital Signal Processing: A Computer-Based Approach, 4th ed. Section numbers cited in the concept panels refer to Oppenheim & Schafer unless stated otherwise.

Question 2: Transfer function from a pole/zero plot and multiplier-free realisations (25 marks)

Question text not reproduced: the examination questions are © Engineers and Geoscientists BC. Open the official past paper (linked at the top of this page) to read the question, then follow the worked solution below.

Given.

FeatureLocationRead from Figure 1
Zero$z = -1$open circle on the unit circle, negative real axis
Pole$z = 0.25 + j0.25$upper cross, gridlines at $0.25$ on both axes
Pole$z = 0.25 - j0.25$lower cross (complex conjugate)
Order2nd-order IIRtwo poles, one finite zero

Find. $H(z)$ as a ratio of polynomials in $z^{-1}$, its Direct Form I structure, and at least two alternative structures that use fewer multipliers.

[Figure not reproduced: Figure 1 redrawn: a conjugate pole pair at 0.25 +/- j0.25 (radius 0.354, angle 45 degrees) and a single zero at z = -1 on the unit circle. See the official exam paper.]

Approach. Build $H(z)$ from its factors, expand the conjugate pair into real coefficients, then exploit the two special features of this constellation — a unity numerator coefficient and pole coefficients that are exact negative powers of two — to remove multipliers.

  1. Write the factored transfer function. A rational $H(z)$ with a zero at $z = z_1$ and poles at $z = p, p^{*}$ is $$H(z) = K\,\frac{1 - z_1 z^{-1}}{(1 - p z^{-1})(1 - p^{*} z^{-1})} ,$$ with $z_1 = -1$, $p = 0.25 + j0.25$ and $p^{*} = 0.25 - j0.25$. The plot fixes only the pole and zero locations, so the overall gain is arbitrary; take $K = 1$.
  2. Expand the conjugate pair into real coefficients. For a conjugate pair the product of the two factors is real: $$(1 - p z^{-1})(1 - p^{*} z^{-1}) = 1 - 2\,\mathrm{Re}\{p\}\,z^{-1} + |p|^{2} z^{-2}.$$ Here $2\,\mathrm{Re}\{p\} = 2(0.25) = 0.5$ and $|p|^{2} = 0.25^{2} + 0.25^{2} = 0.125$, giving the denominator $1 - 0.5 z^{-1} + 0.125 z^{-2}$. The numerator is simply $1 - (-1)z^{-1} = 1 + z^{-1}$.
  3. State the transfer function (part a). $$\boxed{\;H(z) = \frac{1 + z^{-1}}{1 - 0.5\,z^{-1} + 0.125\,z^{-2}}\;}$$ equivalently the difference equation $$y[n] = x[n] + x[n-1] + 0.5\,y[n-1] - 0.125\,y[n-2].$$
  4. Check the result before drawing it. The pole radius is $|p| = 0.25\sqrt{2} = 0.354 \lt 1$, so the filter is stable, and the pole angle is $\theta = 45^{\circ}$, i.e. a resonance near $\omega = \pi/4$. At $z = 1$ (dc) the gain is $H(1) = 2/(1 - 0.5 + 0.125) = 3.2$; at $z = -1$ (Nyquist) the zero forces $H(-1) = 0$. A low-pass character with a null at the folding frequency is exactly what the constellation promises.
  5. Draw Direct Form I (part b). Direct Form I realises the numerator and denominator as two separate delay chains: the input feeds a one-sample delay whose tap is added straight in (numerator coefficient $+1$ needs no multiplier), while the output feeds a two-deep delay line whose taps are scaled by $+0.5$ and $-0.125$ and summed back. Two delay elements are used for the feed-forward path and two more for the feedback path — the non-canonic price Direct Form I pays for its simplicity.
x[n]z^-1coefficient +/-1: a plain wire, no multipliery[n]z^-1z^-10.5-0.125Direct Form I: two feedback multipliers (0.5 and -0.125)
Part (b): Direct Form I. The only multipliers in the structure are the two feedback coefficients 0.5 and -0.125.

Part (c) asks for structures that remove one of those two multipliers. Two independent routes exist, and both exploit the arithmetic of this particular pole pair.

  1. Structure 1 — the coupled (Gold–Rader) form. Write the poles in polar form, $p = r e^{\,j\theta}$ with $$r = |p| = 0.25\sqrt{2} = 0.3536, \qquad \theta = 45^{\circ}.$$ A coupled resonator propagates the state vector by the rotation-and-scaling matrix $$\begin{bmatrix} s_1[n] \\ s_2[n] \end{bmatrix} = \begin{bmatrix} r\cos\theta & -r\sin\theta \\ r\sin\theta & \phantom{-}r\cos\theta \end{bmatrix} \begin{bmatrix} s_1[n-1] \\ s_2[n-1] \end{bmatrix} + \begin{bmatrix} 1 \\ 0 \end{bmatrix} x[n],$$ whose characteristic polynomial is the required $1 - 2r\cos\theta\,z^{-1} + r^{2} z^{-2}$. Because $\theta = 45^{\circ}$ exactly, $$\boxed{\,r\cos\theta = r\sin\theta = 0.25\,}$$ so the two distinct Direct Form I coefficients $0.5$ and $-0.125$ are replaced by a single coefficient value, $0.25$, used on every arm.
  2. Take the all-pole output off the coupled section. State $s_1$ realises $(1 - r\cos\theta\, z^{-1})/D(z)$ and $s_2$ realises $(r\sin\theta\, z^{-1})/D(z)$, so the pure all-pole signal $1/D(z)$ is the combination $s_1 + \cot\theta \cdot s_2$. At $\theta = 45^{\circ}$, $\cot\theta = 1$, so that combination is a plain adder: $$w[n] = s_1[n] + s_2[n], \qquad y[n] = w[n] + w[n-1].$$ The numerator $1 + z^{-1}$ is one delay and one adder, again multiplier-free. This structure is also the numerically best-behaved of the three: its coefficient sensitivity is uniform over the whole unit disc, whereas Direct Form I loses pole-placement resolution near $z = \pm 1$.
x[n]z^-1s1[n]z^-1s2[n]x 0.25x 0.25x 0.25x (-0.25)w[n]z^-1y[n]one coefficient value throughout; the output tap is a bare adder
Part (c), structure 1: the coupled (Gold-Rader) resonator. All four feedback arms share the single coefficient 0.25, and the 45 degree pole angle makes the output tap a bare adder.
  1. Structure 2 — binary-shift (multiplier-free) realisation. The two feedback coefficients are exact negative powers of two, $$0.5 = 2^{-1}, \qquad 0.125 = 2^{-3},$$ so in a fixed-point implementation each product is a hard-wired arithmetic right shift, and no general multiplier is instantiated at all: $$y[n] = x[n] + x[n-1] + \bigl(y[n-1] \gg 1\bigr) - \bigl(y[n-2] \gg 3\bigr).$$ Shifting is exact — unlike a rounded coefficient it introduces no pole-placement error — and the structure below removes both multipliers, not merely one.
x[n]z^-1coefficient +/-1: a plain wire, no multipliery[n]z^-1z^-1>> 1>> 3-this tap is subtractedthe same filter with both coefficients realised as hard-wired binary shifts
Part (c), structure 2: the same filter with both feedback coefficients realised as hard-wired binary right shifts, so the structure contains no multiplier.
  1. Structure 3 (bonus) — nested, or Horner, feedback. The denominator factors by inspection as $$1 - 0.5 z^{-1} + 0.125 z^{-2} = 1 - 0.5 z^{-1}\bigl(1 - 0.25 z^{-1}\bigr),$$ so the recursion can be nested, $$y[n] = x[n] + x[n-1] + 0.5\Bigl(y[n-1] - 0.25\,y[n-2]\Bigr).$$ Both surviving constants, $0.5 = 2^{-1}$ and $0.25 = 2^{-2}$, are again shifts, and the same physical scaler can be time-shared between them. This form is useful when a single hardware multiplier must serve the whole section.
QuantityResult
Poles / zero$p = 0.25 \pm j0.25$ ($r = 0.354$, $\theta = 45^{\circ}$); zero at $z = -1$
(a) Transfer function$H(z) = \dfrac{1 + z^{-1}}{1 - 0.5 z^{-1} + 0.125 z^{-2}}$
Difference equation$y[n] = x[n] + x[n-1] + 0.5 y[n-1] - 0.125 y[n-2]$
Stability / dc gainstable ($r = 0.354 \lt 1$); $H(1) = 3.2$, $H(-1) = 0$
(b) Direct Form I2 multipliers ($0.5$, $-0.125$), 4 delays
(c) Structure 1: coupled formone coefficient value $0.25$ on every arm; output tap $s_1 + s_2$
(c) Structure 2: shift form$0.5 = 2^{-1}$, $0.125 = 2^{-3}$: no multiplier at all
(c) Structure 3: nested form$1 - 0.5 z^{-1}(1 - 0.25 z^{-1})$; one shared scaler