Professional Documents
Culture Documents
Applied Electromagnetics Ground Bounce Project
Applied Electromagnetics Ground Bounce Project
Date: 20/12/13
Applied Electromagnetics
Prediction of Ground Bounce by FDTD
Program
Because a graphical interface can never easily capture all the data coming out of a simulation the
decision was made to use a simple command line like interface. The interface will query the user with
simple questions, requiring just a number or a simple Y (yes) or N (no). This makes the entire program far
easier to use for the average user. Mostly because the results can easily be analyzed in Matlab
afterwards without having to resort to exotic methods to export the data. A user-interface that would
offer the same options would be cluttered with too much buttons and useless information; making the
entire program difficult to use, and hostile towards the user.
The general program workflow is as follows:
1)
2)
3)
4)
5)
To analyze the data the user can use the Log values. These are straight forward and self-explanatory. The
LogX and LogY lists store the respective coordinates of the logged data points. The actual data is stored
in HxLog, HyLog, and EzLog. These are treated by Matlab as matrices, for the user these are actually
nothing more than lists. Where the first index points to the values in LogX and LogY. While manual
analysis is interesting, automated image generation is an important factor. The results can easily be
processed into a series of images quite easily using the ResultPlotter.m script.
As stated earlier, this method of interfacing with the program is intuitive for the regular Matlab users,
and allows any form of analysis deemed necessary without changing the simulation code. To determine
the transfer impedance () the FFT is used, to increase the accuracy it can easily be paddded with
zeros. The user should be careful that no reflections are included; the simulation will not stop as the
wave hits the boundary. Due to the way the algorithm was implemented the reflections would be
incorrect, to solve this problem a small 5 cell PEC boundary was introduced (approximated by = +)
near the edges. This enforces physically correct reflections, but does introduce a few additional quirks.
To start the program simply type fdtd2 in the Matlab command window. The user will be greeted with a
series of messages, and intuitive questions. These are the basic simulation parameters, the program will
give the user suggestions based on parameters that are known to give nice results. Please note that
hitting enter without entering a value will result in an empty variable, and most likely a chain of errors
Date: 20/12/13
further down the line. Most of the questions are self-explanatory, the important additional information
here would be that the simulation grid is numbered starting from 1 at the lower left corner.
2D FDTD - Applied Electromagnetics Project
Authors: Bart Plovie, Li Fan
----------------------------------------------Please provide the relative permeability of your substrate dielectric.
Guidelines:
FR-4 at DC: 4.8 - +1GHz: 4.3
Alumina: between 9 and 12
Phenolic Resin: 8
EpsR: 4
Grid step size [m] (0.004 m): 0.004
Grid size (Suggested: 801): 801
Maximum timestep (2000): 2000
Excitation Amplitude [A] (1 A): 1
Excitation Time Offset [ns] (0.9 ns): 0.9
Excitation Pulse Width [ns] (0.3 ns): 0.3
Excitation X-location (401): 401
Excitation Y-location (401): 401
Circuit board thickness [m] (0.004 m): 0.004
Plot every number of timesteps (4):4
Based on this the program will display and calculate a series of constants, and useful values. Especially
the maximum resolvable frequency is an interesting value. Its obvious Nyquists sampling theorem
applies here as well, and while this is very interesting it should also be noted that two points will be
insufficient. Hence the maximum frequency displayed is actually one tenth of the theoretical value. The
same method is used for the timestep, but the main reason for this will be explained later on.
Physical constants and FDTD parameters:
Mu0: 1.256637E-006
Eps0: 8.854188E-012
Speed of light: 2.997925E+008 m/s
EpsR: 4.000000E+000
Timestep: 1.886923E-011 s
Maximum resolvable frequency: 3.747406E+009
After this the program will ask three more questions. The first one is to add decoupling capacitors
between the two plates. The program will simply ask for the coordinates and its value, optionally the
data can be sampled at the capacitor.
Add decoupling capacitors? (Y/N)y
X-coordinate: 51
Y-coordinate: 200
Capacitor value [pF]: 100
Sample data at this capacitor? (Y/N): y
Add decoupling capacitors? (Y/N)n
Date: 20/12/13
Through this procedure multiple capacitors can be added to investigate the effect of multiple capacitors,
sadly due to lack of time parasitic models were not included. Because of this several effects are not
included, such as the lowering of the resonance frequency resulting in reduced efficiency. The same is
repeated for resistors afterwards, and at last to introduce the probes. Once the simulation started the
program will display the electric field in two different ways. A cut through along the middle of the field,
parallel to the x-axis, and a color map displaying the magnitude of the electric field. The latter is
especially useful to find out when reflections occurred. Do keep in mind this is a very time intensive task
for the processor, meaning that itll add a considerable time to the simulation. There is a notable
difference between versions of Matlab in speed, mostly because more recent versions seem to have
parallelized these tasks. And also seem to use the graphics processor with the accompanying libraries to
speed up plotting tasks. If a more visual approach is deemed necessary a 3D shaded surface plot is a
good option. But these do become confusing if large magnitude differences exist, a possible solution to
this is a logarithmic scale, but this would lead to a severe increase in plotting time.
After the simulation is finished its easy to truncate all the data past a certain point. To do this run
ResultPlotter, which will ask when to start truncating and in which directory to save the images.
Truncation in this case works through the concept of zero padding the FFT to increase the frequency
resolution. The errors introduced by setting all the values from a point onward to zero are minor, if the
time is chosen correctly. Manually padding with even more zeros should be sufficiently easy, but this has
no particular advantage due to the low run time of the simulation.
Date: 20/12/13
In practice this is sufficient to ensure stability of the algorithm, but it doesnt leave much margin for
accuracy. The size of the grid can be chosen in such a way that the geometric features are resolved to a
sufficient accuracy, and this also determines the maximum frequency. As more than two points are
necessary per wavelength to be able to resolve a wave accurately. In reality though, ten samples per
period are necessary for a good accurate image of a wave.
Either way, if the CFL stability condition isnt full-filled due to some reason the simulation becomes
unstable. This instability propagates through the grid at a rate of 1 cell in every direction per time step.
The main drawback of the FDTD algorithm is also given by this condition, high dimensional accuracy
leads to a small time step. A few modified FDTD methods have been proposed to get around this
problem. Sometimes even combining it with a FEM solver locally, or introducing a link to SPICE for
lumped elements.
Several attempts at running simulations have confirmed these conclusions, and so have bugs in the
original program which lead to a breach of this stability condition. On several occasions noticeable
overflows occurred over the whole field, which does point out one advantage of the FDTD. Instability is
very easy to verify for both a human, and a computer. Making it possible to halt the simulation once the
numerical errors stack up to the point where the error becomes too large.
Additionally due to its simplicity its very easy to parallelize the FDTD, which allows easy exploitation of
graphics processors or super computers to speed up the simulations by a significant factor. Another
method worth considering is a different grid or mesh, a hexagonal or triangular grid is capable of fitting
more structures with higher accuracy. But a different grid leads to a different set of equations, which can
be considerably more complicated. As a result a choice of grid and meshing can have a far higher
influence on the accuracy and speed than speeding up the algorithm itself.
0.9
0.3
It should be noted however that this reduction in amplitude is simply related due to the ever increasing
circumference of the wave front. So while the amplitude will drop, and as a result Another good
question would be if the circuit designers rule of thumb is also valid here, the rule generally being wave
effects are visible after one tenth of a wavelength distance from the source. This is mostly an empirical
design rule, but an interesting one none the less. Another important consideration is the 3 dB bandwidth
of the signal. While analytic calculation is possible using Matlab is far easier.
Date: 20/12/13
plot(f, 20*log(freq/max(freq)))
0,8
0,7
0,6
Ez [V]
0,5
0,4
0,3
0,2
0,1
0
0
50
100
150
200
Distance [Cells]
250
300
350
Date: 20/12/13
Using the markers the value -3.193 dB was found for 424 MHz, which is to be expected considering a
Gaussian has a lot in common with a raised cosine. The validity of this method might be questionable but
at least its a consistent indicator of bandwidth. Coincidently this bandwidth seems to roughly be the
area where in the phase is linear. Which implies that the group delay is mostly constant in the spectral
region where the energy is located, hence the signal wont smear out as it travels on.
Based on all these considerations its possible to analyze the impedance at several distances. To do so a
simulation space of 801 by 801 elements was created, with a step of 4 millimeters. The excitation was
placed in the centre at (x = 401; y = 401). The circuit board thickness was set to 4 millimeters, with an
Date: 20/12/13
= 4. Which roughly coincides with FR-4, the most common circuit board material available. FR-4 is
usable up to the 2.4 GHz ISM band for experienced designers, beyond that other materials are usually a
better choice. None the less often the substrate will be chosen to reduce the losses. But since we are
operating under 500 MHz the losses introduced by the usage of FR-4 will be considered negligible for
now, which in reality isnt the case. The wavelength at 424 MHz is 17.68 centimeters, which is large
compared to the 320 cm of the simulation space. The data was sampled at 0.204 m (350,401), 0.404 m
(300,401), 0.604 m (250,401), 0.804 m (200,401), 1.004 m (150,401), and 1.204 m (100,401) from the
excitation point. Leading to the following impedance magnitude plots.
Date: 20/12/13
The impedance at low frequencies is very low by default, this can be explained easily because the via is
only 4 mm long. Which practically means that for anything under 7.49 GHz it wont work as a good
antenna. Past a few gigahertz the simulation clearly loses its accuracy. Mostly because the excitation
signal doesnt contain enough spectral components at that point, leading to an increase in noise.
When zoomed in it leads to an expected characteristic as the via becomes a more efficient radiator.
Additionally a higher impedance will lead to a higher voltage between the plates for the same excitation
current, because of this its logical that the impedance will drop as the distance increases. The
characteristic seems to be a function of the form , where x is unknown but most likely under 10.
An analytic solution was considered but was quickly turning out to be too complex versus the added
value of having such a solution. It is interesting to note that visual confirmation with a color plot during
the simulation does confirm our initial guesses about the symmetry of the problem. The noise on the
data might be reduced through two methods, either by increasing the bandwidth of the excitation signal.
Another method which is less scientific, but will lead to nicer results, is applying a low pass filter to
remove the high frequency noise past 3 GHz. Tests with
Date: 20/12/13
Effect of Capacitors
Using capacitors to reduce the ground bounce effect has been a common strategy among circuit
designers ever since fast switching digital logic was placed on a circuit board. Digital logic being the main
source of the ground bounce effect. The main reason this occurs is in fact a flaw in the commonly used
CMOS topology. A field-effect transistor is capable of holding the charge on its gate for a considerable
time, as a result energy is only needed during switching. Its either drained through the ground plane, or
supplied through a power plane. This leads to current spikes whenever the circuit changes state. While
this seems harmless at first, it does lead to voltage differences over time on any circuit trace. Possibly
leading to false signals or worse.
The main method to prevent this from happening has been to introduce so called decoupling
capacitors. Their functionality can be explained through two ways. The first is that a capacitor stores a
small charge locally close to where its needed. As a result the charge will come from the capacitor
instead of the considerably longer, and slower, power supply. In this mode the capacitor acts as a buffer,
and smears out current spikes over a longer time. This allows faster switching and does reduce noise in
the rest of the circuit. A further mechanism of action is filtering behavior. The signal travels over the
plates and does encounter resistance, combined with the capacitor it forms an RC filter that suppresses
high frequency components. Further methods include the introduction of ferrite beads to raise the self
inductance of power supply traces, special dielectrics between power planes and several others. which
introduces a certain slowness in the response and prevents high frequency spikes. The specialized
dielectrics introduces a distributed capacitor between the two power planes.
While all these methods certainly do reduce the noise, this isnt strictly necessary for most digital circuits
as theyre rather resistant to noise. The moment a microcontroller stops working due to noise on the
power supply there are usually far worse problems in the immediate neighborhood. Analog circuits on
the other hand are very sensitive to noise, especially transceivers and high frequency amplifiers are
notorious. Even a small amount of noise can easily lead to loss of signal or oscillations. A further problem
worth considering is that ground bounce can lead to an electromagnetic compatibility nightmare if
treated improperly.
To study the effect of the capacitor the same excitation parameters as before are used. Two cases are
considered, with the capacitor placed close to the source and further away. The symmetry of the
simulation field is particularly of interest here, simply comparing one side with the other should lead to a
clear view of the effect a capacitor has. Practically the 100 nF capacitor is placed at (350; 401) with data
sampled at the capacitor and (370; 401), (330; 401), (250; 401), (100; 401), (432; 401), (472; 401),
(552; 401), and (702; 401).
The electric field over the capacitor builds up over time as expected, because there are no elements to
dissipate energy. And as a result the electric field over the capacitor builds up quickly until the cut-off
time. The impedance on the other hand does display the effect of the capacitor. The higher frequencies
are clearly suppressed as to be expected from the capacitor impedance in circuit theory.
=
Date: 20/12/13
This means that at the very least the capacitor is capable of suppressing the induced voltage at the point
where it is located. Beyond the bandwidth of the excitation signal the same noise is present once more,
because of this the choice was made to ignore it from this point onward.
The field before the capacitor is clearly altered as well, the main reason for this is that once the wave
front has passed the voltage surrounding the capacitor has dropped again, and the capacitor starts to
discharge. This is both visible in the time domain as a secondary peak, and in the frequency domain as a
bunch of wave like features in the impedance characteristic that most likely form due to interference
patterns that are wavelength, and as a result of that frequency, dependant.
Date: 20/12/13
An equal distance from the capacitor, but at the other side a remarkable difference exists. Not only was
the impedance halved, but the waves are also gone. The phase data sadly contains too much noise to be
of any use directly. Hence the symmetry might be of some use and the point (472; 401) is used as
reference. At first glance the capacitors discharge does cause a considerable secondary signal at this
point leading to the same waves in the impedance characteristic.
Date: 20/12/13
The impedance is higher than at the side with the capacitor, meaning the capacitor does its job quite
well. Further studies at the other points confirm this observation. But as the distance increases the effect
of the capacitor decreases, as expected. For smaller capacitance values the simulation becomes unstable
as the voltage over the capacitor builds up too quickly. None the less if the simulation is stopped before
this happens the impedance characteristic doesnt change much. Changing the position of the capacitor
simply shifts the location of the effect. As such showing plots of these results was deemed pointless.
Date: 20/12/13
Effect of Resistors
A resistor behaves in much the same way as a capacitor for the electromagnetic wave, but with two main
differences. First of all, the impedance is frequency independent. A second factor is the inability of a
resistor to store charge, which eliminates the secondary reflections. The capacitor in the previous setup
was replaced by a 100 Ohm resistor.
Its clear the impedance is lowered versus the case with no resistors. But considerably higher than the
setup with the capacitor. This is to be expected as the resistor has a far higher impedance than the
capacitor. This indicates that all it does is dampen the wave somewhat in a single direction.
Date: 20/12/13
After the signal passes the resistor the impedance actually does drop to a level quite similar as in the
case with the capacitor, but slightly less effective. The main drawback of using a resistor is the power
dissipation at low frequencies, where the power is supplied to the integrated circuits. As such a resistor
might work in certain cases, it isnt advisable in terms of power efficiency.
Date: 20/12/13
Finally an important boundary condition applies with almost all lumped element approaches in the field
of FDTD simulations. The interface between the lumped element and the rest of the simulation space is
usually based on a series of approximations. The mode is commonly set to a transverse electromagnetic
mode, combined with the assumption that the current is uniform over the ports of the simulation space.
Another hard to predict effect in 3D simulations involving lumped elements is the effect of an
electromagnetic wave hitting the side of a lumped element from an unexpected direction. This can be
solved by introducing a perfectly matched layer, or another absorbing boundary condition, around the
lumped element.
Conclusion
Capacitors and resistors are an excellent way to eliminate the ground bounce. A lower impedance on
part of the lumped element will have a stronger effect on the ground bounce. But in practice other
considerations apply. Capacitors with a large capacitance value generally have a low self-resonance
frequency leading to inductive behavior at higher frequencies. Resistors on the other hand have even
more drawbacks.