Communication Technology

 

 

 

Impulse Response

 

Hit a system once, as hard and as briefly as you can, and watch what comes out. That output is the impulse response, and for a large and useful class of systems it is the only measurement you need. This page starts from the definition and then explains why one measurement can stand in for a whole system.

What is Impulse Response ?

Definition of the Impulse Response is very straight forward. It is the response(output) from a system (or process) when you put an 'impulse (unit pulse, delta function)' as an input.

As you know, a system/process and input/output relations can be illustrated as in Figure 1. You put some Input to the system and you get an output (Response) from the sytem.

 

Block diagram of a general input, system or process, and response output

Figure 1. The general picture first. Something goes in, the system acts on it, and something comes out. Impulse response is this same diagram with one particular input chosen.

Impulse Reponse is a special case of these Input -> System -> Output relationship. It is a special case where Unit pulse is the input to a system as shown in Figure 2.

If you have taken any of basic engineering courses, you might have heard of various type of Impulse Response. Probably the most typical example would be from filter design you might have heard of in electrical engineering course as illustrated in Figure 2.

 

Impulse input into a digital filter cloud, giving the filter impulse response as a stem plot

Figure 2. A digital filter answering an impulse. For an FIR filter the stem plot on the right is literally the list of tap coefficients, which is why filter designers treat the taps and the impulse response as the same thing.

If you take some communication engineering, you might have heard of Channel Impulse Response (CIR) as illustrated in Figure 3.

 

Impulse input into a wireless channel, giving the Channel Impulse Response as stems at several delays

Figure 3. The same experiment on a radio channel. The output is a set of stems at different delays and heights, and each stem is a separate path the signal travelled. The result is what is called the Channel Impulse Response.

If you take some control system engineering, you might have heard of System Impulse Response as illustrated in Figure 4.

Impulse input into a control system, giving a decaying oscillating response

Figure 4. A control system answering the same input. The response decays while it oscillates, which is what a second order system with light damping does.

Look at what those three pictures have in common and what they do not. The input is identical in all three, drawn the same way each time. The outputs share nothing at all: a short symmetric burst, a scatter of stems at different delays, and a decaying oscillation. Each output belongs to its own system and to no other.

That is the whole reason the impulse response is worth measuring. It is not a property of the signal you put in, because the signal you put in is always the same. Whatever comes out is a property of the system alone.

  • One input, three completely different outputs : the input carries no information about the system, so everything in the output was put there by the system.
  • The names differ but the measurement does not : filter taps, Channel Impulse Response and step or impulse response in control theory are the same quantity in three fields.
  • The shape tells you the kind of system : one response decays without overshoot, another rings, and a third arrives as separate delayed copies. Each points at a different physical arrangement.

What is the impulse ?

In case of discrete system, the impulse (unit pulse) is simple data sequence in which only the value at t = 0 is 1 and all other elements are 0. In case of continous system, the unit pulse is a continuous delta function wherethe width of the pulse is infinately small and the area under the pulse is 1. It means that the height of the pulse should become infinately high to make the area to be 1. So it is impossible to make the ideal unit pulse in continous system. You can only approximate it.

 

The impulse in discrete time as a single unit sample, and in continuous time as a narrow spike of unit area

Figure 5. The impulse in both worlds. In discrete time it is a sequence that is 1 at n = 0 and 0 everywhere else. In continuous time it is a spike of vanishing width whose area stays at 1, which is the condition marked on the drawing.

The discrete case gives no trouble. It is an ordinary sequence, you can store it in an array, and you can feed it to a filter and watch what comes back.

The continuous case needs more care, because the thing drawn there is not a function in the ordinary sense. No function is zero everywhere except at a single point and still encloses an area of 1. The impulse is defined instead by what it does inside an integral, and the drawing is a picture of a limit rather than of a value.

One property carries all the weight. Multiply any signal x(t) by an impulse centred at time a, integrate over all time, and the answer is x(a). The impulse selects a single value out of the signal. Everything later on this page rests on that one behaviour, and it is the reason the area has to be 1 rather than anything else.

So how narrow is narrow enough in practice? Narrow compared with the system, not narrow in absolute terms. A pulse a nanosecond wide is an impulse to a circuit that takes a microsecond to settle, and it is a slow ramp to a circuit that settles in a picosecond. The comparison that matters is against the system's own time constant.

  • Discrete is easy, continuous is a limit : the discrete impulse is a sequence you can store. The continuous one is defined by what it does under an integral, and no ordinary function does it.
  • Area is the property, not height : the drawing marks the area as 1 and the width as vanishing. Height is whatever it has to be to keep that product fixed.
  • Narrow means narrow against the system : the same physical pulse is an impulse to a slow system and an ordinary signal to a fast one.

Why the Impulse Response is important ?

Why we have to care about the impulse response ?  It is because it fully characterize a system. If you know the impulse response of a system,  you can figure out the response (output) of the system for any kind of input without even testing it. (Note : This holds true only when the system is LTI(Linear Time Invariant) system). Once you have the impulse response and any arbitrary input, you can predict the output of the system simply by taking the convolution of the input and the impulse response. You see many examples in Convolution page. In that page, you see data sequences representing a 'channel' and it is the impulse response of the channel.

If you see the filer design examples in Signal Processing page, you would see various sequences (they call it 'taps for filter' or 'coefficient') representing the characteristics of filters. Those filter taps are also a impulse response for the filter.

The claim above is a strong one, so it is worth seeing where it comes from. It rests on two assumptions about the system, and it fails the moment either one stops holding.

The first assumption is linearity. Double the input and the output doubles. Add two inputs together and the outputs add together, with no extra term appearing. The second is time invariance. Delay the input by some amount and the output is the same shape delayed by that same amount, with nothing else changed. A system with both properties is called LTI, and almost every filter, cable and well behaved circuit qualifies.

Now take any input at all. In discrete time it is simply a list of numbers. A list of numbers is a sum of scaled impulses: one at n = 0 scaled by x[0], one at n = 1 scaled by x[1], and so on. That decomposition costs nothing, because it is just another way of writing the same list.

Apply the two assumptions to that decomposition and the result follows. Each scaled, shifted impulse produces a scaled, shifted copy of h. Linearity says the outputs add. So the output is a sum of scaled, shifted impulse responses, and h is the only thing about the system that appears anywhere in it.

Why one impulse response is enough input split into impulses the same LTI system scaled, shifted h[n] h[n] measured once x[0] at n = 0 x[1] at n = 1 x[2] at n = 2 x[0] h[n] x[1] h[n-1] x[2] h[n-2] + y[n] = x[0] h[n] + x[1] h[n-1] + x[2] h[n-2] + ... Every input is a sum of scaled, shifted impulses. Linearity lets the pieces be scaled and added, and time invariance says a shifted input gives the same response shifted. That sum is convolution.

Figure 6. The argument in one picture. Split the input into impulses, send each through the same system, and add the results. The operation that sum defines is convolution, written y = x * h.

That sum has a name. It is convolution, and it is written y = x * h. In discrete time y[n] is the sum over k of x[k] h[n-k], and in continuous time the sum becomes an integral. Convolution is not an extra idea added to impulse response. It is what impulse response, linearity and time invariance together require.

The caveat matters as much as the result. None of that holds without both assumptions. An amplifier driven into compression is not linear, so its impulse response does not predict what it does to a large signal. A fast fading radio channel is not time invariant, which is why a receiver re-measures the Channel Impulse Response constantly instead of measuring it once.

One more consequence is worth knowing. The Fourier transform of h is the frequency response of the same system. Convolution in time becomes plain multiplication in frequency, so the two descriptions hold identical information in different coordinates. One filter designer quotes a frequency response and another quotes a tap list. They are describing the same filter.

  • Two assumptions do all the work : linearity and time invariance. Drop either one and a single impulse response stops describing the system.
  • Any input is a sum of scaled, shifted impulses : that decomposition is free, and it is what lets one measured response answer for every possible input.
  • Convolution is the consequence, not an extra rule : once you accept the decomposition and the two assumptions, the output has to be a sum of scaled, shifted copies of h.
  • Impulse response and frequency response are the same information : one is the Fourier transform of the other, so a claim made in one domain can always be checked in the other.

How to get the impulse response for a system ?

Now you would know that impulse response is very important information for a system. Then how can we get the important information (impulse response) for a system ?

I can think of roughly three four methods as listed below.

 

Four routes to an impulse response: measurement with a pulse generator, differential equation, transfer function, state space matrix

Figure 7. Four routes to the same answer. The top path is measurement: drive the real circuit with a very narrow pulse and record what comes out. The green boxes are the analytical routes, and two of them start from the differential equation.

Read the green boxes as two families rather than four separate options. Measurement is one family, and it is the top path: build the thing, hit it with a pulse from a signal generator, and record the output. Analysis is the other, and everything below the circuit belongs to it.

Inside the analytical family the differential equation comes first, because it is what the physics gives you. From there you can move to a transfer function and invert it, or you can move to a state space matrix and solve that instead. Both arrows in the drawing rejoin at the same response plot, which is the point the picture is making: the routes differ and the answer does not.

The drawing leaves out one problem with measurement. A true impulse cannot be generated. Infinite height, zero width and unit area is a mathematical object, not something a pulse generator produces. So the practical methods all approximate it, and there are three worth knowing.

The first is the obvious one: use a pulse that is narrow against the system's own time constant, and accept the small error. The second is to apply a step instead and differentiate the result, which works because the impulse is the derivative of the step. The third is to send a long known wideband sequence and correlate the output against it, which spreads the energy over time instead of concentrating it.

That third method is the one wireless actually uses. Reference signals are known sequences, and the receiver correlates against them to estimate the Channel Impulse Response. No handset ever transmits an impulse, and the channel estimation page follows that process further.

  • Measure it or derive it : the four routes reduce to those two families. The drawing rejoins them at one response plot, because the answer does not depend on which route you take.
  • A true impulse cannot be generated : every practical method is an approximation, so the question is always which approximation and how much error it costs.
  • Correlation is what real receivers do : a known wideband sequence delivers the same information as an impulse without needing the peak power an impulse would demand.

 

I will put further explanation about this process later. In the meantime, I would recommend you to go through Laplace Transform page and Differential equation pages for mathematical background for this.

Examples of Impulse Response

I will start with a couple of examples first, but I will keep adding more examples to give you intuitive ideas for impulse responses for various systems.

 

RC circuit driven by an impulse, giving a decaying exponential response

Figure 8. An RC circuit and its impulse response. One energy storing element makes this a first order system, and the response is a single decaying exponential with no overshoot.

 

RLC circuit driven by an impulse, giving a damped oscillating response

Figure 9. Adding an inductor makes the circuit second order, and the response rings before it settles. Whether it rings at all is decided by the damping.

Those two circuits are worth comparing directly, because one component separates them and the difference in behaviour is large.

The RC circuit stores energy in one place, the capacitor, so it is a first order system. Its impulse response is h(t) = (1/RC) e-t/RC for t of zero or more. Read that physically: the impulse dumps charge onto the capacitor in no time at all, and the capacitor then discharges through R. One time constant, RC, sets how fast the curve falls, and the response never crosses zero.

The RLC circuit stores energy in two places, the capacitor and the inductor, so it is second order. Energy can now move back and forth between them, and that exchange is what produces the ringing in the picture. Two numbers describe it. The natural frequency is 1 / the square root of LC, and it sets how fast the ringing oscillates. The damping ratio is (R/2) times the square root of C/L, and it decides whether there is any ringing at all.

Below a damping ratio of 1 the circuit is underdamped and the response oscillates while it decays, which is the case drawn. At exactly 1 it is critically damped and returns as fast as it can without overshooting. Above 1 it is overdamped and returns slowly. The same three cases appear in every second order system, mechanical ones included.

The general rule behind both examples is short. Count the independent energy storing elements and you have the order of the system, and the order limits what shapes the impulse response can take. A first order system cannot ring, however you choose its components.

  • Order comes from counting energy stores : one capacitor gives first order, a capacitor and an inductor give second order, and the order caps how complicated the response can be.
  • A first order system can never ring : with one place to hold energy there is nothing for it to oscillate against, so the response decays and that is all.
  • Damping decides ringing, natural frequency decides its rate : the two numbers are independent, so a circuit can ring fast and briefly or slowly and for a long time.