Welcome to Tim’s Blackboard! This is the place to find discussions on interesting topics related to signal integrity and power integrity.

This week on Tim’s Blackboard is “Convolution and Single Pulse Response.”

# Introduction

Two weeks ago, in the “Dirac Delta Misnomer” post, I explained why Dirac delta function is technically a distribution. I also talked about the impulse response: the response of a system given the Dirac delta distribution as the input.

This week, I will demonstrate the concept of convolution and the process of generating single pulse response using convolution, as shown in Fig. 1.

*Fig. 1: ADS simulation result of the single pulse response generated by old-school convolution.*

# System Level Abstraction

Before delving into the concept of convolution, I want to first show the top-level system diagram to place the impulse response in context.

In Fig. 2, you can see the input goes into the channel and out comes the output at the…… output. In general, we don’t know how the channel operates because we do not have the information for the channel behavior , which is the reason for the question marks.

*Fig. 2: By injecting an impulse at the input of the channel, one obtains the impulse response of the channel under test. Because the impulse response completely characterizes a system, one now knows the channel behavior.*

To obtain a behavioral model for the channel, one sends an impulse (Dirac delta distribution) at the input of the channel. Because the impulse response completely characterizes the channel, the channel response at the output is the behavioral model of the channel we are looking for. (To learn more about signal and systems, I strongly suggest 6.003 from MIT open courseware.)

# The Concept of Convolution

The form of the expression,

shows up naturally in the solution of differential equations by integral transforms (like Fourier or Laplace transforms) related to electrical engineering, optics, probability and statistics, and other disciplines [1].

In the context of the linear time-invariant (LTI) systems, such as a high-speed channel, once we have the impulse response of the channel, the output of the system is the convolution of the input and the channel behavior, see Fig. 3.

*Fig. 3: The convolution operation appears when one computes the output of a channel, where the channel has impulse response, h(t), and x(t) at the input. *

If we expand the short hand notation, , we arrive at the familiar form

# Graphical Convolution in Action

It’s hard to make out what is happening from the classic convolution integral, so I will represent the equation graphically.

Say we have a function, , shown in Fig. 4, and we want to calculate the convolution of the function with itself.

*Fig. 4: Illustration of the function f(t)*

To compute the convolution of function with itself, we will flip the function and generate the mirror image, , see Fig. 5.

*Fig. 5: Illustration of f(-t), the mirror image of the function f(t)*

Finally, we slide the mirrored function towards the right. As we slide the mirrored function, we will multiply the two functions and integrate to find the overlapped area. Fig. 6 is the illustration of convolving with itself at some time t_{1}.

*Fig. 6: The shaded region is the value of convolving the two functions at time t _{1}. According to the graph, at time equals to 0.6 units, the result of convolution is 0.6.*

In Fig. 6, the shaded area is the value of the convolution at time t_{1}, to find out convolution results for all time, we will keep sliding, increasing time and calculate the overlapped area at each time step. We can expect that as we slide the pink rectangle to the right, we will reach a maximum overlapped area at time equals to 1 unit, where the two rectangles are right on top of each other. Afterwards, we expect the area to start decreasing to zero.

The result of the convolution is shown by the red curve in Fig. 7. The red dot shows the value of the product of the two functions integrated throughout the entire time axis at a specific time t. The red trace left behind the red dot is the convolution result for all time.

*Fig. 7: Animation of convolving a rectangular function with itself. The red curve shows the result of the convolution. Fun Fact: convolving two rectangles gives you a triangle.*

# Generating Single Pulse Response

The single pulse response of a channel is the result of convolving a single pulse with the impulse response of the channel. In this example, the single pulse comes from a 10 Gbps transmitter and has a duration 0.1 nsec, shown in Fig. 8.

*Fig. 8: The setup for single pulse response convolution. *

Like the rectangle example, to get the single pulse response, we slide the single pulse, find the overlapped area by multiplication and integration. Similarly, we would expect the single pulse response to increase and reach a maximum value and decrease to zero. Note the single pulse response has voltage range from 0 to 1 V, the result of multiplying a large voltage value in GV scale with a small time value in nsec scale.

Shown in Fig. 9, the result from the simulation agrees with our expectation and we now have the knowledge of the response of the channel to a 10 Gbps pulse.

*Fig. 9: ADS simulation of single pulse response computed with convolution.*

# The Story Told by a Single Pulse

You might be thinking, “Why do we care about the single pulse response?”

The short answer: because we can learn a lot from the signature of the waveform, especially when equalization is used at the transmitter and/or receiver. Interested readers can find more information in the attached single pulse response slides I presented in DesignCon 2017.

Convolution is quite a revolutionary concept in dealing with signals and systems in the time domain. In the coming weeks, we will start moving toward the frequency domain and become “bilingual” in both time and frequency domain.

I am working on putting together a workspace for this post and it should be up next week in TB #3.5.

That's this week's Tim's Blackboard. See you in two weeks!

**To download ADS so you can learn more about convolution:**

# References

[1] A. Dominguez. (2015, Jan. 24). *A History of the Convolution Operation *[Online]. Available: http://pulse.embs.org/january-2015/history-convolution-operation/