Sign in

Not a member? | Forgot your Password?

Search Online Books

Search tips

Free Online Books

Free PDF Downloads

A Quadrature Signals Tutorial: Complex, But Not Complicated

Understanding the 'Phasing Method' of Single Sideband Demodulation

Complex Digital Signal Processing in Telecommunications

Introduction to Sound Processing

C++ Tutorial

Introduction of C Programming for DSP Applications

Fixed-Point Arithmetic: An Introduction

Cascaded Integrator-Comb (CIC) Filter Introduction


IIR Filter Design Software

See Also

Embedded SystemsFPGA
Chapter Contents:

Search Spectral Audio Signal Processing


Book Index | Global Index

Would you like to be notified by email when Julius Orion Smith III publishes a new entry into his blog?


Convolution of Short Signals

figure[htbp] \includegraphics{eps/blackboxgen}

Figure 7.1 illustrates the conceptual operation of filtering an input signal $ x(n)$ by a filter with impulse-response $ h(n)$ to produce an output signal $ y(n)$. By the convolution theorem for DTFTs2.3.5),

$\displaystyle (h*x) \;\longleftrightarrow\;H \cdot X


$\displaystyle \hbox{\sc DTFT}_\omega(h*x)=H(\omega)X(\omega)

where $ h$ and $ x$ are arbitrary real or complex sequences, and $ H$ and $ X$ are the DTFTs of $ h$ and $ x$, respectively. The convolution of $ x$ and $ h$ is defined by

$\displaystyle y(n) = (x*h)(n) \isdef \sum_{m=-\infty}^{\infty} x(m)h(n-m).

In practice, we always use the DFT (preferably the FFT) in place of the DTFT, in which case we may write

$\displaystyle \hbox{\sc DFT}_k(h*x)=H(\omega_k)X(\omega_k)

where now $ h,x,H,X\in {\bf C}^N$ (length $ N$ complex sequences). It is important to remember that the specific form of convolution implied in the DFT case is cyclic (also called circular) convolution [248]:

$\displaystyle y(n) = (x*h)(n) \isdef \sum_{m=0}^{N-1} x(m)h(n-m)_N \protect$ (8.2)

where $ (n-m)_N$ means ``$ (n-m)$ modulo $ N$.''

Another way to look at convolution is as the inner product of $ x$, and $ \hbox{\sc Shift}_n[\hbox{\sc Flip}(h)]$, where $ \hbox{\sc Flip}_n(h)\isdeftext h(-n)=h(N-n)$, i.e.,

$\displaystyle y(n) = \langle x, \hbox{\sc Shift}_n[\hbox{\sc Flip}(h)] \rangle. % \qquad\hbox{($h$ real)}

This form describes graphical convolution in which the output sample at time $ n$ is computed as an inner product of the impulse response after flipping it about time 0 and shifting time 0 to time $ n$. See [248, p. 105] for an illustration of graphical convolution.

Previous: Overlap-Add (OLA) STFT Processing
Next: Cyclic FFT Convolution

Order a Hardcopy of Spectral Audio Signal Processing

About the Author: Julius Orion Smith III
Julius Smith's background is in electrical engineering (BS Rice 1975, PhD Stanford 1983). He is presently Professor of Music and (by courtesy) of Electrical Engineering at Stanford's Center for Computer Research in Music and Acoustics (CCRMA), teaching courses and pursuing research related to signal processing applied to music and audio systems. See for details.


No comments yet for this page

Add a Comment
You need to login before you can post a comment (best way to prevent spam). ( Not a member? )