Discrete-Time Signals and Transforms
Representation and Properties of Discrete-Time Signals
A discrete-time signal is just a sequence of numbers, where each number corresponds to a specific time index. Think of recording audio: instead of capturing a smooth, continuous sound wave, you grab a snapshot of the amplitude at regular intervals. Each snapshot is one sample.
Mathematically, you write a discrete-time signal as , where is the integer time index and is the amplitude at that instant. The square brackets (rather than parentheses) are the standard convention to distinguish discrete-time signals from continuous-time ones.
A few key properties you'll see applied to discrete-time systems (not the signals themselves):
- Linearity means the system obeys superposition: scaling an input scales the output, and the response to a sum of inputs equals the sum of individual responses.
- Time-invariance means shifting the input in time shifts the output by the same amount, with no other change.
- Causality means the system's output at time depends only on present and past inputs, never future ones.
Z-Transform and its Applications
The Z-transform takes a discrete-time signal and maps it into the complex frequency domain. This is analogous to how the Laplace transform works for continuous-time signals.
It's defined as:
where is a complex variable. You can think of each term as weighting the -th sample by a power of .
Why bother? Because operations that are difficult in the time domain (like convolution) become simple algebra in the Z-domain. Specifically, the Z-transform lets you:
- Determine stability by checking where the poles of fall relative to the unit circle.
- Analyze frequency response by evaluating the transfer function on the unit circle ().
- Design digital filters by placing poles and zeros in the z-plane to shape the frequency response.
Discrete Fourier Transform (DFT) and Fast Fourier Transform (FFT)
The DFT takes a finite-length signal of samples and produces frequency-domain coefficients. It tells you which frequencies are present in your signal and how strong they are.
Here is the frequency index (from 0 to ), and each is a complex number whose magnitude gives the strength of that frequency component and whose phase gives the timing offset.
Computing the DFT directly requires operations, which gets slow for large . The Fast Fourier Transform (FFT) is an algorithm that computes the exact same result in operations. For a signal with samples, that's roughly 10,000 operations instead of about 1,000,000. This speedup is what makes real-time spectrum analysis, audio processing, and image compression practical.

Discrete-Time System Analysis
Impulse Response and Difference Equations
The impulse response is the output of a system when you feed in a unit impulse: a signal that equals 1 at and 0 everywhere else. If you know a system's impulse response, you can figure out its output for any input (using convolution, covered next).
Most discrete-time systems are described by difference equations, which express the current output as a weighted combination of current/past inputs and past outputs. A general form looks like:
Here and weight the current and previous input samples, while feeds back the previous output. The presence of that term (feedback) is what distinguishes IIR systems from FIR systems.
Convolution Sum and its Properties
Once you know a system's impulse response , you can find the output for any input using the convolution sum:
To compute this for a specific time index :
- Flip the impulse response in time to get .
- Shift the flipped version by to get .
- Multiply by for every value of .
- Sum all those products. That sum is .
- Repeat for each value of you need.
Convolution has useful algebraic properties: it's commutative (), associative (cascading two systems is equivalent to convolving their impulse responses), and distributive over addition.
The convolution theorem ties everything together: convolution in the time domain equals multiplication in the frequency domain. This is exactly why the Z-transform and DFT are so useful. Instead of doing an expensive convolution, you can transform both signals, multiply, and transform back.

Stability Analysis of Discrete-Time Systems
A discrete-time system is BIBO stable (Bounded-Input, Bounded-Output) if every bounded input produces a bounded output. There are two equivalent ways to check this:
- Time-domain test: The impulse response must be absolutely summable:
If this sum diverges, the system is unstable.
- Z-domain test: All poles of the system's transfer function must lie strictly inside the unit circle (). A pole on or outside the unit circle means the system is unstable or marginally stable.
The z-plane test is usually more practical since you can find pole locations directly from the difference equation coefficients.
Digital Signal Processing
Digital Filters and their Design
Digital filters modify a signal's frequency content. They fall into two categories:
FIR (Finite Impulse Response) filters have an impulse response that eventually reaches zero after a finite number of samples. Key traits:
- Always stable (no feedback, so no poles outside the unit circle).
- Can be designed to have perfectly linear phase, which preserves the shape of the signal.
- Common design methods include window methods (Hamming, Blackman, etc.) and optimization techniques like the Parks-McClellan algorithm.
IIR (Infinite Impulse Response) filters use feedback, so their impulse response theoretically lasts forever. Key traits:
- Can achieve a sharper frequency cutoff with fewer coefficients than FIR filters.
- Risk of instability because of the feedback terms.
- Typically designed by starting with a known analog filter (Butterworth, Chebyshev) and converting it to digital form using the bilinear transformation or impulse invariance method.
The tradeoff: FIR filters are simpler and always stable but need more coefficients. IIR filters are more efficient but require careful stability checks.
FFT and Convolution in Practice
The convolution sum and FFT work hand-in-hand in real applications. Filtering a signal in the time domain means convolving it with the filter's impulse response, which can be computationally expensive for long signals. A faster approach:
- Compute the FFT of the input signal.
- Compute the FFT of the filter's impulse response.
- Multiply the two frequency-domain representations point by point.
- Compute the inverse FFT to get the filtered output.
This frequency-domain filtering approach is used everywhere: noise removal, audio equalization, image sharpening, and data compression.
Z-Transform in System Design
The Z-transform ties together much of what's covered above. Given a difference equation, you can take the Z-transform of both sides to get the transfer function , which is the ratio of the output's Z-transform to the input's Z-transform.
From you can:
- Find the pole-zero plot to assess stability and predict frequency response behavior.
- Evaluate on the unit circle () to get the frequency response directly.
- Use the inverse Z-transform to recover the time-domain impulse response.
In short, the Z-transform is the central analysis tool for discrete-time systems, much like the Laplace transform is for continuous-time systems.