Summary of Z-Transforms and Transfer Functions in DSP
Z-Transforms and Transfer Functions in DSP: The Ultimate Guide
Introduction
This material explains how discrete-time linear time-invariant (LTI) systems are represented and implemented using system transfer functions in the operator (z) domain. You will learn how to move from impulse-response descriptions to rational transfer functions, how to build signal-flow realizations (Direct Form I and II), and how to compute outputs using software filters. Practical examples and implementation notes are included.
Definition: A system transfer function is the operator-domain representation of an LTI system that maps an input sequence to an output sequence via multiplication in the operator domain.
From Impulse Response to Transfer Function
An LTI system can be described by its unit impulse response $g[n]$ in time domain. In the operator domain, the system action becomes multiplication by the transfer function $G(z)$.
- Time-domain convolution: $y[n] = x[n] * g[n]$
- Operator-domain multiplication: $Y(z) = X(z),G(z)$
Definition: The transfer function $G(z)$ is the $Z$-domain (operator-domain) transform of the impulse response $g[n]$, i.e. $G(z) = Z{g[n]}$.
Useful operator-domain rules (summary)
- Linearity: if $y[n] = a,x[n]$ then $Y(z) = a,X(z)$.
- Superposition: if $y[n] = x_1[n] + x_2[n]$ then $Y(z) = X_1(z) + X_2(z)$.
- Delay: if $y[n] = x[n-1]$ then $Y(z) = z^{-1} X(z)$.
Transfer Function as a Rational Polynomial
Any causal LTI system with finite- or infinite-length impulse response that is rational can be written as a ratio of polynomials in $z^{-1}$ (or $z$). A common normalized form uses $z^{-1}$:
$$G(z) = \frac{B_0 + B_1 z^{-1} + B_2 z^{-2} + \dots + B_N z^{-N}}{A_0 + A_1 z^{-1} + A_2 z^{-2} + \dots + A_N z^{-N}}$$
If $A_0 \neq 0$ we often normalize by dividing numerator and denominator by $A_0$ to obtain $a_0 = 1$:
$$G(z) = \frac{b_0 + b_1 z^{-1} + \dots + b_N z^{-N}}{1 + a_1 z^{-1} + \dots + a_N z^{-N}}$$
- Zeros are roots of the numerator polynomial.
- Poles are roots of the denominator polynomial.
Definition: A normalized transfer function has $a_0 = 1$ so that the denominator starts with $1$ and subsequent coefficients are the feedback coefficients $a_1, a_2, \dots$.
Signal-Flow Implementations
A transfer function can be converted to a signal-flow (block) diagram. Two standard canonical forms are Direct Form I and Direct Form II.
Direct Form I (DF-I)
- Implements the numerator and denominator polynomials with separate delay lines and then combines them.
- Requires more delay elements but is straightforward.
Structure (conceptual): split the block into a feedforward part (numerator taps) and a feedback part (denominator taps) and use delays $z^{-1}$ to access past samples.
Advantages:
- Intuitive mapping from polynomial coefficients to taps.
- Numerically robust for certain coefficient sets.
Disadvantages:
- Uses more delay memory than DF-II.
Direct Form II (DF-II)
- Reorganizes the computation to use a single delay line that serves both feedforward and feedback computations.
- Offers minimal delay storage (fewer delay elements) at the cost of internal state values that can grow larger.
Advantages:
- Economical in memory (fewer delays).
Disadvantages:
- More sensitive to internal overflow and quantization, so less suitable for fixed-point implementations.
| Feature | Direct Form I | Direct Form II |
|---|---|---|
| Number of delay elements | More | Fewer |
| Memory usage | Higher | Lower |
| Sensitivity to overflow | Lower | Higher |
| Implementation complexity | Moderate | Moderate |
Example: Building the Signal Flow
Given a transfer function
$$G(z) = \frac{1 + 2 z^{-1}}{1 - 0.9 z^{-1}}$$
using Direct Form I, the difference equation is
$$y[n] = b_0 x[n] + b_1 x[n-1] - a_1 y[n-1]$$
with $b_0 = 1$, $b_1 = 2$, $a_1 = -0.9$ (note sign convention; the normalized denominator was $1 + a_1 z^{-1}$ so here $a_1 = -0.9$ corresponds to a pole at $z = 0.9$).
💡 Věděli jste?Fun fact: Recursive filters with poles near the u
Already have an account? Sign in
LTI Systems Transfer Function
Klíčové pojmy: Transfer function maps convolution to multiplication: $Y(z)=X(z)G(z)$, Normalized form: $G(z)=\dfrac{b_0+ b_1 z^{-1}+\dots}{1+a_1 z^{-1}+\dots}$ with $a_0=1$, Poles are denominator roots; zeros are numerator roots, Direct Form I uses separate delay lines for numerator and denominator, Direct Form II uses a single delay line and saves memory, DF-II is more sensitive to overflow and quantization than DF-I, Use filter/lfilter with b and a arrays for batch computation, For real-time processing, implement the difference equation iteratively, Delay in time-domain corresponds to multiplication by $z^{-1}$ in operator domain, Normalize coefficients when possible to simplify feedback terms