+ All Categories
Home > Documents > fdtd simulation

fdtd simulation

Date post: 02-Jun-2018
Category:
Upload: sudarson47
View: 263 times
Download: 0 times
Share this document with a friend

of 37

Transcript
  • 8/10/2019 fdtd simulation

    1/37

  • 8/10/2019 fdtd simulation

    2/37

  • 8/10/2019 fdtd simulation

    3/37

    A finite-difference time-domain (FDTD) software 301

    Canonical FDTD Form [10]):

    Hn+ 1

    2

    r(i,j,k) = Hn 1

    2

    r(i,j,k) t

    Enr(i,j,k) (1)

    En+1r(i,j,k) = E

    nr(i,j,k)+

    t

    r(i,j,k)

    H

    n+ 12

    r(i,j,k) Jn+ 1

    2

    r(i,j,k)

    (2)

    where r = x, y, z. Here Hn+ 1

    2

    r(i,j,k) and Enr(i,j,k) are shorthand,

    for instance for x component these are [6, 7]:

    Enx(i,j,k) =En

    z(i,j+1,k) Enz(i,j,k)

    y

    En

    y(i,j,k+1) Eny(i,j,k)

    z

    (3a)

    Hn+ 1

    2

    x(i,j,k) =H

    n+ 12

    z(i,j,k) Hn+ 1

    2

    z(i,j1,k)

    y

    Hn+ 1

    2

    y(i,j,k) Hn+ 1

    2

    y(i,j,k1)

    z (3b)

    Equation (1) and (2) are derived from Maxwells Curl equations ofEand H fields respectively by replacing the differential operators withfinite difference. The term r(i,j,k) is the effective permittivity of the

    medium while J

    n+ 12

    r(i,j,k) is the effective current density. Both terms canbe dependent on location, orientation and previous field componentvalues. The detailed derivation of the update equations for the fieldcomponents will not be repeated here, but the reader is referred to theappropriate references [212].

    The focus of this paper is on the designing of a versatile FDTDsoftware for PCB modeling. This paper summarizes the works of [212], particularly [6, 7, 10] and shows in a systematic way how a fullfledge FDTD software for 3D PCB modeling can be developed using

    object-oriented programming (OOP) language. Section 2 describes indetail how a 3D PCB model with complicated conducting structurescan be modeled by using dielectric cubes with various conductingpatches on the surface. A summary of incorporating lumped linearand nonlinear components is also presented. Issues of stability andabsorbing boundary condition (ABC) are briefly discussed in Section 3.An efficient syntax to describe a 3D model is then shown in Section 4,followed by an overview of the architecture of the FDTD softwarein Section 5. Finally Section 6 shows some simulation examples to

    validate the work.

  • 8/10/2019 fdtd simulation

    4/37

    302 Kung and Chuah

    N=1 N=2 N=3

    N=5 N=7 N=8 N=9

    N=10 N=12N=13 N=14

    N=15 N=16 N=18N=19

    N=20 N=21

    PEC surface

    N=17

    Figure 2. Perfect electric conductor (PEC) patches on cube surfacewith integer identification.

    2. BUILDING A 3D MODEL FROM CUBES

    Since a PCB assembly contains metallic structures, a range of cubes,with different conducting patches on the surface is proposed, asillustrated in Fig. 2. Notice that in Fig. 2 an integer is assignedto each cube pattern, this allows the user to differentiate between

    the distinct cubes. Combining and stacking these cubes allows oneto achieve a realistic approximate 3D model of a PCB assemblywith various conducting structures. Since the conducting traces ona PCB is usually made of gold-plated copper-beryllium alloy with verylarge conductivity, it will be assumed as perfect electric conductor(PEC) here for simplicity. Moreover each cube can be assigned withsome properties, which include the dielectric constant r and theconductivity of the cube. These two parameters can be constant,or change with frequency and field intensity. This allows modeling

    of dielectric properties such as (1) linear, lossless, non-dispersive (2)linear, lossy, non-dispersive (3) linear, lossless and dispersive and (4)nonlinear. In a homogeneous, linear and lossless dielectric, the generalelectric field update equation of (2) would be simplified to:

  • 8/10/2019 fdtd simulation

    5/37

    A finite-difference time-domain (FDTD) software 303

    En+1r(i,j,k)=E

    nr(i,j,k)+

    t

    r

    H

    n+ 12

    r(i,j,k)

    (4)

    If the dielectric is non-homogeneous, the permittivity r in (4)

    will be the average permittivity of the 4 cubes surrounding the electricfield component [9]. Linear dispersive dielectric can be accounted forby Recursive Convolution Method [11] (also described extensively inChapter 9 of [3]) or the Z-transform method [12]. The Z-transformmethod can also handle nonlinear dielectric quite effectively. Inboth approaches the electric update equation will again assume the

    general form of (2), with the effective current density Jn+ 1

    2

    r(i,j,k) due to

    the contribution from previous field components. Jn+ 1

    2

    r(i,j,k) will be a

    nonlinear function of the field components for a nonlinear dielectric.

    Dielectric

    Conducting trace

    PEC on top faceTriangular PEC

    patch on top face

    Figure 3. Top view of a section of a PCB surface and the equivalentFDTD model.

    2.1. Incorporating Conducting Structures

    Using the cubes of Fig. 2, a conducting trace with bend can easily beconstructed as shown in Fig. 3. To model a PEC patch on the top faceof a cube, all the corresponding E field components on the edges ofthe face will be permanently set to zero. To model a triangular patchon the surface of a cube, a method called Diagonal split-cell model forPEC surface ([3], Chapter 10) is employed. The formulation is basedon application of integral form of Faradays Law, the detail is discussedin [3] and [9]. Here only the result is given. Consider Fig. 4 where thetop face of the cube is a PEC conducting patch, the update equation

    for Hn+ 12z(i,j,k+1) is:

    Hn+ 1

    2

    z(i,j,k+1)=Hn 1

    2

    z(i,j,k+1)

    2t

    yEnx(i,j,k+1)+

    2t

    xEny(i+1,j,k+1)

    (5)

  • 8/10/2019 fdtd simulation

    6/37

    304 Kung and Chuah

    x

    y

    z

    Cube (i,j,k)

    Hz(i,j,k+1)

    Ex(i,j+1,k+1)

    Ex(i,j,k+1)

    Ey(i,j,k+1)

    Ey(i+1,j,,k+1)

    PEC

    Figure 4. Top face of Cube (i,j,k) being partially covered withtriangular PEC patch.

    Equation (5) together with En+1x(i,j+1,k+1) = 0 and E

    n+1y(i,j,k+1) =

    0 account for the triangular PEC patch on the top surface ofCube (i,j,k). The update equations for En+1

    x(i,j,k+1)

    and En+1

    y(i+1,j,k+1)remain unchanged. Fig. 5 shows the other orientations for triangularPEC patches and the corresponding update equations for Hz fieldcomponent. This can be easily extended to triangular conductingpatches in other surfaces.

    2.2. Lumped Components

    In FDTD method, a lumped component is assumed to coincide withan E field component. Associated with each lumped element is thecurrent-voltage (IV) relation. A potential difference imposed acrossthe lumped element will result in a current flowing through the lumpedelement with negligible delay. Maxwells Curl equation for H is thenused to derive the update equation for the corresponding E fieldcomponent. Update equation for Hfield components surrounding thelumped component is not affected.

    2.2.1. Linear Lumped Components

    Linear lumped components encompass elements such as short lengthof wire, resistor, capacitor, inductor and resistive voltage source.The IV relation for the lumped component is linear. Here it isassumed the lumped element coincides withEfield componentEn

    z(i,j,k),

  • 8/10/2019 fdtd simulation

    7/37

    A finite-difference time-domain (FDTD) software 305

    x

    y

    z

    Hz(i,j,k+1)

    Cube(i,j,k)

    Hz(i,j,k+1)

    Cube(i,j,k)

    Hz(i,j,k+1)

    Cube(i,j,k)

    ++= +

    ++

    -+

    +

    +n

    kjiyxtn

    kjixytn

    kjiz

    n

    kjizEEHH )1,,(

    2)1,1,(

    2)1,,()1,,(

    2

    1

    2

    1

    -+= ++

    ++

    -+

    +

    +n

    kjiyxtn

    kjixytn

    kjiz

    n

    kjiz EEHH )1,,1(

    2)1,1,(

    2)1,,()1,,(

    2

    1

    2

    1

    ++= +

    +

    -+

    +

    +n

    kjiyxtn

    kjixytn

    kjiz

    n

    kjizEEHH )1,,(

    2)1,,(

    2)1,,()1,,(

    2

    1

    2

    1

    Figure 5. Update equations for Hz field component for varioustriangular PEC patches on top surface of Cube (i,j,k).

    generalization to other Efield components can be easily carried out.Table 1 provides the update equations for the En+1

    z(i,j,k) field component

    when it is assumed that the above lumped components coincide with

    it. The derivation is described in [2]. Update equations for Hn+ 1

    2

    x(i,j,k),

    H

    n+ 12

    x(i,j1,k), H

    n+ 12

    y(i,j,k) and H

    n+ 12

    y(i1,j,k) remain unchanged.

    2.2.2. Nonlinear Lumped Components

    In this section, the technique of incorporating lumped diode andbipolar junction transistor (BJT) will be described. The IV relationsfor diode and BJT are nonlinear. The discrete diode or BJT inclusiveof the packaging may be larger than the cubes used to discretized thecomputational domain, but the actual size of the PN junction within

    the diode and BJT is usually smaller than the length of the cubes, thuscan be considered as lumped. In this section, modeling of field effecttransistor (FET) will not be covered as the method proposed for thediode and BJT can be directly extended to include the FET, see [5]

  • 8/10/2019 fdtd simulation

    8/37

    306 Kung and Chuah

    Table 1. Update equations for En+1z(i,j,k) of various linear lumped

    elements.

    Resistor21

    ),,(

    2

    ),,(

    2

    21

    ),,(

    11

    1 +

    +

    ++

    +

    =

    n

    kjiz

    yxRzt

    tnkjiz

    yxRzt

    yxRztn

    kjiz HEE

    where ( )( ) ( ) ( ) ( )

    y

    HH

    x

    HHn

    kjiz

    n

    kjix

    n

    kjix

    n

    kjiy

    n

    kjiyH

    +

    +-

    -

    +

    =21

    ,1,21

    ,,21

    ,,121

    ,,21

    ,,

    Capacitor21

    ),,(),,(1

    ),,(1

    +

    +

    ++=

    n

    kjiz

    yxzC

    tn

    kjizn

    kjizHEE

    Inductor ( ) =

    ++ +=

    n

    m

    mkjizyxL

    tzn

    kjiztn

    kjizn

    kjiz EHEE

    1),,(),,(),,(

    1),,(

    221

    Resistive Voltage Source

    1

    -

    11

    1

    21n

    s

    21

    V

    2

    ),,(

    2

    ),,(

    2

    21),,(

    +

    ++

    +

    =

    +

    +

    +

    zyxR

    zt

    yxR

    zt

    n

    kjiz

    yxR

    zt

    tn

    kjiz

    yxR

    zt

    yxR

    ztn

    kjizHEE

    nsV can be a constant to represent d.c. source, a sinusoidal

    function, a pulse function or any other arbitrary function of n.

    Wire 01 ),,( =+n kjizE

    y

    x

    zCube

    with

    permittivity

    C

    y

    x

    z

    y

    x

    z

    z

    y

    x

    R

    +

    - VS

    y

    x

    z

    (i,j,k)

    L

  • 8/10/2019 fdtd simulation

    9/37

    A finite-difference time-domain (FDTD) software 307

    for instance.The diode model used here is similar to the model used in SPICE

    circuit simulator [13]. Here Taylor expansion is used to approximate

    the current-voltage (IV) relationship across the PN junction locally.The Taylor expansion will result in a quadratic expression for the IVrelation, which changes dynamically as the operating point of the PN

    junction shifts during simulation. The advantage of this approach issimplicity in that the update equation for the electric field is explicit.Full details are presented in [6]. Unlike the linear components the PN

    junction is a polarized device, i.e., the current flow in the positive andnegative direction is not the same. Assuming the lumped diode tobe oriented along z-axis, it can be oriented in two modes along the z

    direction. We call these the positive and negative orientation, denotedby integer N. This is illustrated in Fig. 6. The positive orientationcorresponds to forward bias current flowing in the positive z-axis andvice-versa for the negative orientation. The effective voltage across thePN junction is then given by:

    V =N Ez(i,j,k)z (6)

    The bipolar junction transistor (BJT) is modeled as two back-to-backPN junctions. In this paper Gummel-Poon model is used instead

    as it is more accurate over the older Ebers-Moll BJT model [13].Following the spirit of incorporating the diode into FDTD formulation,the IV relations across the base-emitter (BE) and base-collector(BC) junctions of the BJT are approximated by two variables Taylorexpansion. Ignoring higher order terms leads to two update equationsfor the electric fields across the BE and BC junctions. Full details arepresented in [7]. Table 2A and Table 2B summarize the formulationfor diode and BJT into the FDTD framework based on the methodsdescribed in [6] and [7]. This is shown for diode that is oriented along

    z-axis and BJT along x-axis, again orientation in other directions caneasily be accommodated.

    I

    +ve OrientationN= +1

    I

    -ve OrientationN= -1

    +ZV

    V

    -Z

    Figure 6. Positive and negative orientation of the diode.

  • 8/10/2019 fdtd simulation

    10/37

  • 8/10/2019 fdtd simulation

    11/37

  • 8/10/2019 fdtd simulation

    12/37

    310 Kung and Chuah

    Table 2B. continued.

    z

    HH

    y

    HHn

    kjiC

    n

    ckcjciy

    n

    ckcjciy

    n

    ckcjciz

    n

    ckcjciz

    cccH

    -

    -+

    +

    -

    +

    +

    -

    +

    =

    2

    1

    )1,,(2

    1

    ),,(

    2

    1

    ),1,(2

    1

    ),,(21

    ),,(

    z

    HH

    y

    HHn

    kjiE

    n

    ekejeiy

    n

    ekejeiy

    n

    ekejeiz

    n

    ekejeiz

    eeeH

    -

    -+

    +

    -

    +

    +

    -

    +

    =

    2

    1

    )1,,(2

    1

    ),,(

    2

    1

    ),1,(2

    1

    ),,(2

    1

    ),,(

    ECCCLEES IIIIF

    ++=

    11 CCECLCCS IIII

    R

    ++=

    11

    121

    1 +

    +=

    t

    C

    VV

    I

    zyxt

    nC

    nBC

    BC

    ES

    B

    =

    +

    21

    ),,(1n

    kjiCtn

    CSzy

    tN

    ccc

    C HIC

    nBE

    BE

    CSEC

    VV

    I

    zy

    NxNtE

    =21

    nBC

    ESEC

    V

    I

    zy

    NxNtB

    =22

    =+

    2

    1

    ),,(2n

    kjiEtn

    ESzy

    tN

    eee

    E HIC

    ,*For the example illustrated in the figure above,NC= -1 andNE= 1.

    y

    x

    z

    E

    B

    C

    y

    E2 = txyz

    VBC

    1

    2

    ICS

    VBE VBEn+

    CE

    n

    + 1

    En +1

    x( )cic c i,,j k=E

    x( c,jc kc)

    n

    +

    C1E2 2 1CEB B2E1 1E2 E

    n +1

    x( ie ej k ki je e e, , ,,

    ,,

    E) =n

    x( )e + 1

    1 1

    1 2

    22

    2C CBB

    B E B E

    Ex(ie je

    k

    ke)

    Ex (ic,jc, c)

    x

    t

    3. THE ISSUE OF STABILITY AND ABSORBINGBOUNDARY CONDITION

    The proposed scheme of incorporating nonlinear diode and BJT intoFDTD simulation is efficient. Since it is a one-step method and explicit,the scheme can be easily integrated into an FDTD program. Theissue of using too large a time step, rendering the result inaccuratedoes not occur. Since in requiring the space and time discretizationto fulfill acceptable dispersion and CFL Stability Criterion [3, 8, 9],the time step is usually limited to one tenth of the period of highestharmonics encountered. This itself is sufficient to guarantee adequateaccuracy. Furthermore, in [10], a new general stability criterion hasbeen developed which can accommodate nonhomogeneous dielectricand lumped components (both linear and nonlinear). It is shownin [10] if the lumped components formulation does not contributenumerical energy to the system then the FDTD formulation is stable

  • 8/10/2019 fdtd simulation

    13/37

    A finite-difference time-domain (FDTD) software 311

    Perfect conducting wireps0.1mm52.0mm8.0mm8.0 ==== tzyx

    x

    y

    B

    E

    C

    Transistor outline

    Yees cell

    PEC wire

    Ex(ic, jc, kc)

    Ex(ie, je, ke)

    y

    x

    B

    E

    C

    Transistor

    x

    y

    Transistor outline

    E

    Transistor

    E

    B C

    ),,( eee kjixE

    B

    E

    C

    Yees cell ),,( ccc kjiyE

    E

    Figure 7. Representing an NPN transistor in SOT23 and SOT143packages in FDTD framework.

    (a condition known as proper formulation). For the case of PCB

    assembly, the space and time discretization fulfills almost similarcondition as the CFL Stability Criterion. It is illustrated in [10]that all the lumped component formulations in Section 2 are properor conditionally proper, thus the FDTD system so developed will bestable.

    In this paper the Murs first order absorbing boundary condition(ABC) ([3]) is used for the following reasons:

    1. Murs first order ABC can be applied to boundary with dielectric

    discontinuities. For boundary with dielectric discontinuity it isdiscovered that the application of Murs second order ABC willcause large spurious wave component to be generated in thecomputational domain, which defeat the purpose of having an

  • 8/10/2019 fdtd simulation

    14/37

    312 Kung and Chuah

    ps0.1mm52.0mm8.0mm8.0 ==== tzyx

    60 mils

    30 mils

    0603 package component

    Solder pad

    R/2

    R/2

    x

    y

    80 mils

    50 mils

    0805 package

    component

    Conductive

    terminals

    Solder padPEC Wires

    R/3

    R/3

    R/3

    Yees cell

    Figure 8. Representing a resistor R in 0805 and 0603 packages inFDTD framework.

    Differentdielectric

    Application of Mur's

    second order ABC on

    this E field component

    will result in large

    spurious wave.y

    x

    z

    Figure 9. BoundaryEfield component between two layers of differentdielectrics.

    ABC with better absorbing property. The reason for this iselectromagnetic wave travels at different velocity for dielectricwith different permittivity. Murs second order ABC ([3]) assumesall associatedEfield components to have similar permittivity andvelocityc, which is not true when the boundaryEfield componentis sandwiched between two different dielectrics. This is shown inFig. 9 for y = 0 boundary with a discontinuous dielectric alongz-axis. This results in substantial error during the interpolationprocess, which then propagates back to the computational domain.

  • 8/10/2019 fdtd simulation

    15/37

    A finite-difference time-domain (FDTD) software 313

    2. Computationally Murs first order ABC is much easier toimplement as compare to other ABCs.

    3. For many PCB modeling problems, the spurious reflection from

    Murs first order ABC is still acceptable as long as sufficient buffercubes are allocated.

    4. THE MODEL DEFINITION FILE

    With the method to model a 3D PCB assembly in place, a syntax isneeded to describe the 3D model. Here we propose a syntax calledthe Model Definition File (MDF). The MDF is a text file, consistingof lines of text which describe a single cube, or a collection of similar

    cubes, until all cubes are taken into account in the model. Each linestarts with one of the following keywords: cube, region, comp,probe, param and *. A brief description of the keywords isprovided in Table 3.

    A simple MDF file listing is shown in Table 4. The MDF contentof Table 4 describes the physical model illustrated in Fig. 10. Thecorresponding electrical schematic is shown in Fig. 11. Fig. 10 shows

    x

    z

    y

    x

    air

    A

    B

    Resistive

    termination

    Microstrip line

    Top view of the model

    Front view of the modelResistive

    voltage source

    Layers of buffer cubesTop ABC

    Layers of buffer cubes

    Region of interest

    Right

    ABCBottom ABC

    Ground plane

    PCB

    dielectric

    Left

    ABC

    Figure 10. Top view and front view of a simple model.

  • 8/10/2019 fdtd simulation

    16/37

  • 8/10/2019 fdtd simulation

    17/37

  • 8/10/2019 fdtd simulation

    18/37

    316 Kung and Chuah

    Figure 11. The electrical schematic of the model of Figure 10.

    Ground planes

    PEC wires

    At end-point A (see Fig. 10) At end-point B

    Resistive voltage

    sourceResistive termination

    x

    z

    Figure 12. End-points of the microstrip line.

    Every line beginning with the keyword * is a comment and will beignored.

    5. THE FDTD SIMULATION ENGINE ANOVERVIEW

    The basic simulation engine is divided into two modules: the interfaceto the WindowsTM operating system and the actual simulation engine.This is shown in Fig. 13. In this paper only an overview of the programwill be given. Emphasis is on the concepts of organizing the data inthe program systematically so that many different conditions can bemodeled.

    The WindowsTM Interface Block is coded in C Language, as thereare many standard templates for creating a WindowsTM based programin C. The FDTD Simulation Engine is coded in C++ Language

  • 8/10/2019 fdtd simulation

    19/37

    A finite-difference time-domain (FDTD) software 317

    Windows Interface Module

    Routines to create a Windows based

    application.

    Handle user interface such as dialog boxes,menu, mouse, keyboard etc.Read and parse input files.

    Set up all the datatypes and variables in theprogram.

    Print output results.Coded in C.

    FDTD Simulation Engine

    Preprocessing and determining

    computation coefficients.

    Perform E and H fields update.Enforce boundary condition.Coded using object-oriented language

    C++.Can be ported to other platforms such

    as UNIX or LINUX operating

    systems.

    Input file (MDF) Output Files

    Simulation

    results

    Instructionsand settings

    for simulation

    TM

    Figure 13. Major software blocks for the FDTD simulation program.

    with future upgrade and expansion in mind. Using object-orientedprogramming language such as C++ allows efficient code reuse andproject management [15]. Standard C++ syntaxs complying with

    ANSI (American National Standard Institute) are used, thus ensuringthat the FDTD Simulation Engine can be compiled and run in otherplatforms such as UNIX or LINUX. The output of the software containstwo files, an output file (data.out) containing the electric field ormagnetic field components and a header file (data.hdr) containing alisting of the field components plotted out in the output file. Thedata.out file is stored in binary format as this saves disk space whilethe data.hdr file is stored in text format. Thus visualizing softwareis required to view the output file. Software such as MATLAB or

    MATHCAD can be employed in visualizing the output file. Due tospace constraint, the details of the output file will not be discussed,but full description can be obtained from the software online help [16].

    5.1. Software Flow

    Fig. 14 shows the high-level flow of the FDTD Simulation Enginemodule. The flow is typical of a FDTD algorithm except for theinitialization part. There are more steps in the initialization portion

    as compare to standard FDTD flow as the FDTD simulation engineneeds to accommodate different types of elements with various updatefunctions. Furthermore frequently used values are pre-computed andstored as computational coefficients. A system is therefore needed

  • 8/10/2019 fdtd simulation

    20/37

    318 Kung and Chuah

    Create entry based onlumped components

    Assign computationalmode based on surface

    characteristics of cubes

    Assign computational

    mode based on dielectric

    characteristics of cubes

    Create entry based on

    cubes

    Standard FDTD

    routinesEnd of iteration?

    Update H field

    components in field object

    Update E field

    components in field object

    Initialize field objects

    Parse input file

    Start

    Initialize cube object

    Print output data

    Yes

    End

    Update Boundary E fields

    Set up computation

    coefficient look-up

    No

    Figure 14. Computation flow of the FDTD program.

    to track the location of each coefficient in the computer memory.The following sections will attempt to provide in more details thekey components of the software flow. Some familiarity with C/C++language syntax and datatype are assumed.

    5.2. Pre-Computation and Look-up Table

    In order to hasten the update of all electric and magnetic fieldcomponents, regularly used expressions are pre-computed and stored

  • 8/10/2019 fdtd simulation

    21/37

  • 8/10/2019 fdtd simulation

    22/37

    320 Kung and Chuah

    In the software, the actual computation coefficient table is implementedas an array of structures instead of a two-dimensional floating-pointarray (note: the term Structure here is a form of datatype in C/C++

    Language [15]). Each field component, Ex, Ey, Ez, Hx, Hy, Hz hasits own look-up table. The structures are named stCCEx, stCCEy,stCCEz, stCCHx, stCCHy and stCCHz. Each structure containsten double type variables fC0 to fC9, a char type variable umodeand avoidpointerplist. Fig. 15 shows an example of the look-up tablefor Ex field components:

    stCCEx[0]

    stCCEx[1]

    stCCEx[2]

    stCCEx[m-1]

    stCCEx[m]

    fC0 fC1 fC2 fC9 umode plist

    stCCEx [1]

    value

    next

    value

    nextvalue

    next

    NULL

    value

    next

    Optional linked-list

    Computational CoefficientsLook-up Table for Ex

    Structure

    stCCEx

    Figure 15. Computational coefficients look-up table for Ex fieldcomponents.

    Each entry stCCEx[i] can store up to ten coefficients. Thevariable umodeis an 8-bit unsigned integer (known as char datatypein C/C++) used to identify the type of lumped element associatedwith the Ex field component using these coefficients. For instance

    umode= 0 means the Exfield is in a linear, lossless and non-dispersivedielectric, umode = 100 means the Ex field component coincide witha lumped resistor and so forth. The values assigned to umodeare thesame as that used to differentiate various lumped components [16].

  • 8/10/2019 fdtd simulation

    23/37

    A finite-difference time-domain (FDTD) software 321

    The void pointerplistcan point to a linked-list [15]. This is used whenthe ten variables fC0fC9 are not sufficient to store the computationcoefficients, and extra memory locations are needed. This happens

    for instance for update equations ofE fields in dispersive dielectric.The linked-list provides a mechanism of variable length storage. Itwill be questioned why not do away with fC0fC9, having justplistand umode. The reason is retrieving information from a linked-list is computationally slower and more cumbersome than directlyreading from an array. To access fC2 in stCCEx[1], the followingstatement is used in C/C++: stCCEx[1].fC2. To access the thirdelements in the linked-list, we have to access the first element, thenthe second and finally the third in a sequential manner [15]. Most

    update functions forE

    andH

    field components usually do not requireso many coefficients, so having ten variables in the structure and therest in an optional linked-list provide a compromise between computermemory requirement and speed.

    5.3. Other Important Objects in the Simulation Engine

    In the parlance of object-oriented programming, there is no variableor datatype. Instead there are only objects or class as it is calledin C++ [15]. Each object consists of a number of members, whichcan be a data storage element such as integer, floating-point (float),long floating-point (double), character (char), structures etc. andfunctions/subroutines. The functions within an object are known asmethods. The members of an object have different visibility scope,some members are accessible by functions outside of the object, whileothers are only accessible by other members within the object. Anobject can be inherited by other objects, making all its member dataand functions available to the child object. The inherited object isusually called the parent object. The child object can add its ownmembers on top of the parents members, this features form the basisof code reuse in object-oriented technology.

    A number of objects are declared for the FDTD SimulationEngine as shown in Fig. 16. Among the more important objectsare the electric field object (tEfield), magnetic field object (tHfield)and Absorbing Boundary Condition object (tABC). The electric fieldobject contains the variables to store all the Efield components in themodel. Similarly the magnetic field object contains the variables tostore all Hfield components in the model. The Absorbing BoundaryCondition object contains some variables and functions for updatingtheEfields tangential to the model boundary. These three are the baseobjects, sometimes also called the parent objects. A child object, theFDTD field object (tEHfdtd)inherits both tEfieldandtHfieldobjects.

  • 8/10/2019 fdtd simulation

    24/37

    322 Kung and Chuah

    tEfield tHfield tCube tABC

    tEHfdtdChild object or

    class

    Parent objects or classes

    Figure 16. Various objects declared in the FDTD simulation engine.

    fEx

    umodex

    uparamex

    Ex

    fHx

    umodhx

    uparamhx

    Hx

    Figure 17. Three data storage locations are needed for each fieldcomponent.

    There is also another base object, the cube object (tCube) which isused during the initialization stage and for creating the computationcoefficient look-up table. The cube object tCube is used to store thecharacteristics of every cube in the model as the MDF file is readand parsed. Information contained in tCube is then used to assist inconstructing the look-up table depicted in Fig. 15 for E and H fieldcomponents. The object tCube will be removed from the computermemory once initialization is completed.

    Associated with each field component are three variables. A charvariable to specify the update mode for the field such as Equations (7a)or (9), another charvariable specifies the row index for the associatedcomputation coefficients look-up table, and lastly a double variableto store the current value of the field component. Fig. 17 illustratesthis concept for Ex and Hx components. In Fig. 17, uparamex anduparamhxare the variables associated with the row index of the look-up tables for Ex and Hx field respectively. The variablesumodexandumodhxare associated with the update mode. Lastly the current valuesfor the fields are stored in fEx and fHx. All these variables are

  • 8/10/2019 fdtd simulation

    25/37

  • 8/10/2019 fdtd simulation

    26/37

    324 Kung and Chuah

    Access

    coefficients based

    on uparamex

    Check umodex

    Update Exn+

    using Equation(1)

    Update Exn+

    using Equation

    (2)

    Update Exn+

    using Equation(3)

    Sample E field update functions

    Update H field componentsin field object

    Update E field componentsin field object

    Update Boundary E fields

    ( )( )

    :

    :

    :(3)Equation

    0

    :(2)Equation

    21

    21

    21

    21

    21

    21

    21

    21

    )1,,(),,(1

    ),1,(),,(1),,(1

    ),,(

    1),,(

    )1,,(),,(

    ),1,(),,(),,(1

    ),,(

    -

    -+=

    =

    -

    -+=

    +

    -

    +

    +

    +

    -

    +

    ++

    +

    +

    -

    +

    +

    -

    +

    +

    n

    kjiy

    n

    kjiyz

    t

    n

    kjiz

    n

    kjizy

    tnkjix

    nkjix

    nkjix

    n

    kjiy

    n

    kjiyzt

    n

    kjiz

    n

    kjizytn

    kjixn

    kjix

    HH

    HHEE

    E

    HH

    HHEE

    zyzC

    zyzC

    C0 C1 C2 umode pList

    stCCEx

    Computation Coefficient Look-upTable for Ex

    C0 C1 C2 umode pList

    stCCEx [1]

    C0 C1 C2 umode pList

    stCCEx [2]

    C0 C1 C2 umode pList

    stCCEx[m]

    From

    Figure 14

    umodex = 1

    umodex = 3

    umodex = 2

    ( )

    ( )

    [0]

    Equation (1):

    Figure 19. Update E field component sequence, as seen for Excomponent.

    during the initialization stages can be found in [9]. The proceduresshown in Fig. 19 are then repeated for Ey, Ez, Hx, Hy and Hzfield components. There are also other objects or data structures not

    described by this short discussion. These includes a linked-list to storethe information for field components to probe or save to the outputfile, and a linked-list for storing the information for various lumpedcomponents.

  • 8/10/2019 fdtd simulation

    27/37

    A finite-difference time-domain (FDTD) software 325

    WinFDTD

    WinFDTD_draw Plot

    Figure 20. Screen shots of WinFDTD, WinFDTD draw andPlot.

    5.4. The Complete Package

    The complete FDTD simulation package developed for this projectconsists of three separate programs whose screen shots are shown inFig. 20.

    1. The FDTD simulation engine called WinFDTD.

    2. A utility called WinFDTD draw which is a program for theuser to draw the three-dimensional model layer-by-layer. Theprogram then automatically generates the model definition file(MDF) which is then read by WinFDTD.

    3. A simple utility called Plot, to read the output files and plotthe field components, or the equivalent voltages and currents.

    Both WinFDTD draw and Plot are also WindowsTM

    basedprograms that are created using the programming language VisualBasic 6.0 by Microsoft Corp. The details will not be described, asthese are merely helper programs.

  • 8/10/2019 fdtd simulation

    28/37

    326 Kung and Chuah

    Z

    c

    = 5 0

    T

    d

    = 1 5 0 p s

    V

    i n

    V

    L

    x

    y

    z

    t

    x

    y

    z

    y

    x

    z

    PEC Conductor

    M icrostrip line

    Murs

    first

    order

    ABCs

    = 0.7mm

    = 0.8mm

    = 0.52mm

    = 1ps

    16 cells along

    45 cells along

    13 cells along

    -axis

    -axis

    -axis

    Resistive voltage

    source along -axis

    Lumped

    inductor

    Lumped

    resistor

    Figure 21. Schematic and top view of the model.

    6. SAMPLE SIMULATION EXAMPLES

    Transmission Line Loaded with Series RL ImpedanceThe first simulation example shows a resistive voltage source

    driving a short length of transmission line with a series RL load. Theschematic and top view of the model is shown in Fig. 21. Vs is atrapezoidal pulse source, with rise/fall time of 200 ps, amplitude of

    3.3 V, high period of 600 ps and low period of 1000 ps. TransmissionlineT1is a lossles microstrip line, it is designed to have a characteristicimpedance of 50 , and propagation delay of 150 ps. The printedcircuit board (PCB) is assumed to be linear, lossless with r = 4.2.Thickness of the PCB is three cells along thez-axis. A PEC conductingplane covers the bottom of the PCB. At the top and four sides of themodel, Murs first order ABC is employed. The simulation results areshown in Fig. 22. The effective voltages are obtained by performinga numerical line integration of the corresponding Efield components.

    For instance the lumped resistor RL coincides with Ey(9,37,5) and thelumped inductor LLcoincides withEy(9,34,5). Thus the effective voltage

  • 8/10/2019 fdtd simulation

    29/37

    A finite-difference time-domain (FDTD) software 327

    0 1000 2000 3000 4000 5000 6000

    0

    1

    2

    3

    V2n

    V4n

    0 1000 2000 3000 4000 5000 6000

    0

    1

    2

    3

    V1n

    V3n

    Vin

    FDTD

    PSPICE

    ps

    Volts

    VL

    FDTD

    PSPICE

    Volts

    ps

    Figure 22. The effective voltage across the series RL load.

    across the series RL load can be computed as:

    VnL =

    E dl = Ny

    Eny(9,37,5)+E

    ny(9,34,5)

    (11)

    where N = 1 because positive current flows in positive y direction.The schematic of Fig. 21 is also implemented in PSPICE circuitsimulator and the results are superimposed with the FDTD results.

    Crosstalk SimulationThe second example is a simulation of electromagnetic coupling

    between two adjacent microstrip lines. This is the classic crosstalksimulation. The schematic and top view of the model are shown inFig. 23. In the schematic, both the active and passive transmissionlines are terminated with its own characteristic impedance of 50 .Vs is a trapezoidal pulse source, rise/fall time of 200 ps, amplitudeof 3.3 V, high period of 600 ps and low period of 1000 ps. As theelectromagnetic energy from Vs travels along the active transmission

  • 8/10/2019 fdtd simulation

    30/37

    328 Kung and Chuah

    x = 0.7mm

    y = 0.8mm

    z = 0.52mm

    t= 1ps21 cells alongx-axis

    51 cells alongy-axis

    13 cells alongz-axis

    50Active line

    V1 V2

    V3 V4

    50

    50

    50

    50

    Active microstrip line

    Passive microstrip lineVs

    Coupled

    50Passive line

    x

    y

    Source end Load end

    Figure 23. Schematic and top view of the coupled microstrip linemodel.

    line, energy is also coupled to the passive transmission line via electricand magnetic field coupling. The coupled electromagnetic energyappears as voltages across the source and load end of the passivetransmission line, known as Near-End Crosstalk (NEXT) and Far-End Crosstalk (FEXT) respectively in the literature [17, 18]. FDTDsimulated voltages on the source and load ends of the active and passivetransmission lines are shown in Fig. 24, together with waveformsobtained using the RF/microwave CAD software Advance DesignSystem (ADSTM) from Agilent Technologies. The coupled microstripline model used by ADSTM is based on the model proposed in [24]. Asobserved there is good agreement of both results.

    Oscillator SimulationA simple UHF oscillator is designed and constructed on FR4

    substrate printed circuit board using the schematic shown in Fig. 25.The oscillator configuration is based on the Clapp-Gouriet design [19]and is operational from 800 MHz to 1900 MHz. For demonstrationpurpose the oscillator frequency is tuned to around 1300 MHz. Againthe reasons for using this frequency is similar to that of [7], in that the

    FR4 dielectric can be considered lossless and non-dispersive at lowerfrequency. The discretization used is x = 0.8mm, y = 0.8mm,z = 0.52mm and t = 1.0 ps, 24 cells along x-axis, 43 cells alongy-axis and 14 cells along z-axis. Thickness of the printed circuit board

  • 8/10/2019 fdtd simulation

    31/37

    A finite-difference time-domain (FDTD) software 329

    0 1000 2000 3000 4000 5000 60000.5

    0

    0.5

    1

    1.5

    2

    V1n

    V2n

    V3n

    V4n

    n Int

    1 2 3 4 50 6

    0.0

    0.5

    1.0

    1.5

    -0.5

    2.0

    time, ns ec

    V1

    V2

    V3

    V4

    V1

    V2

    V3

    V4

    ps

    WinFDTD Simulation Result

    ADSSimulation Result

    ns

    V1V2

    V3V4

    V1

    V2

    V3

    V4

    Figure 24. Voltages on the active and passive transmission lines.

    Near-End Crosstalk (V3), Far-End Crosstalk (V4).

    is 3 cells. First order Mur ABC is employed at the model boundaries.The BJT employed in the oscillator is BFG520, a wide-band 9 GHzNPN transistor in SOT-143 plastic package [20]. The diode D1 isa schottky diode, HSMS-2820 from Agilent Technologies [21]. It ishoused in SOT-23 plastic package. The SPICE models for both theBJT and schottky diode can be obtained from the manufacturers

    website. InductorL1 is a ceramic-core SMD inductor in 0805 package.From the datasheet ofL1, the minimum self-resonating frequency andQ factor of the inductor are 4000 MHz and 40 (measured at 250 MHz)respectively (www.epcos.com). Thus for operating frequency below

  • 8/10/2019 fdtd simulation

    32/37

    330 Kung and Chuah

    Gummel-Poon Model

    for BFG520

    Iss=1.01677E-15

    F=220.182

    R=100.714

    nF=1.00065

    nR=0.99811VA=48.062

    IK F=0.51004

    ISE =2.83095E-13

    nE=2.0357VB=1.6929

    IK R=2.3526E-3

    ISC =2.44898E-17

    nC =1.02256

    VJE=0.60

    mE =0.258153

    CJE=1.24548E-12

    F=8.61625E-12

    VJC =0.189234mC =0.3333

    CJC =4.47646E-13

    R=0

    BFG520

    HSMS-2820

    3.0V

    Is = 2.20E-08Cjo = 0.7E-12

    n = 1.08

    D = 11.54nsM =0.50

    FC=0.5

    Vj = 0.65

    Rs = 6.0

    HSMS-2820

    Output SMA

    connector

    Output with

    50 Ohms

    load

    BFG520

    Parameters for HS MS-2820

    Figure 25. Top view of the oscillator, FDTD model and actual printed

    circuit board.

  • 8/10/2019 fdtd simulation

    33/37

    A finite-difference time-domain (FDTD) software 331

    0 1000 2000 3000 40000.4

    0.2

    0

    0.2

    0.4

    Vmn

    Sn Offset+

    n 10ps

    Measured

    Simulated

    Figure 26. Comparison between simulation and measurement voltagewaveforms at the output of the oscillator.

    2000 MHz, the inductor can be considered ideal with very little skin-

    effect loss. InductorL2 is implemented on the printed circuit board asspiral inductor [22]. The capacitors are high-quality SMD multi-layerceramic capacitor in 0603 package while the resistors are high qualitySMD resistors in 0805 package. The connector at the output is a 50 3.5 mm SMA connector.

    A two-step simulation scheme similar to that in [7] is employed.Initially all the lumped capacitors are removed and the lumpedinductor is replaced with a short circuit. Simulation is carried out for70000 time-steps (t= 1.0 ps) until d.c. steady state is achieved. After

    this all the lumped capacitors and inductor are inserted back to themodel. TheEandHfield components at time-stepn = 70000 are usedas the initial conditions, and the simulation is then rerun until transientsteady state is achieved. This two-step scheme shortens the timerequired to achieve transient steady state [7]. A comparison betweensimulation and measured waveform at the output port is shown inFig. 26 for transient steady state. The measured waveform is obtainedusing the TDS8000 digital-sampling oscilloscope from Tektronix. Fullmeasurement details are presented in [9]. It is observed that the

    measured oscillation period is approximately 760 ps while the simulatedoscillation period is approximately 710 ps. Translated into frequencies,the measured frequency is 1.32 GHz while the simulated frequency is1.41 GHz. The difference could be attributed to a number of factors:

  • 8/10/2019 fdtd simulation

    34/37

    332 Kung and Chuah

    1. Tolerance and nonideal characteristics of the SMD capacitors andinductor.

    2. The SPICE models of the schottky diode and transistor also play

    a role in the dicrepancy.3. Discontinuity and reflection from the measurement setup.

    7. CONCLUSION

    A simulation framework for modeling electromagnetic wave propaga-tion in a PCB environment using FDTD approach has been describedin this paper. FDTD is chosen, as it is a time-domain method, whichmade it suitable for incorporating nonlinear components. Moreover be-ing a time-domain method allows examination of the behaviors of themodel during transient state. This is advantageous for studying thetransient behavior for microwave oscillator circuits and circuits con-taining high-speed digital signals. Section 4 introduces a convenientnotation to describe a complex three-dimensional model cube-by-cube.This notation is very flexible and compact, with ample capacity to in-clude new features in the future. In Section 5, the algorithms presentedin Sections 24 are systematically converted into a computer program.Object-oriented programming (OOP) technology is used to enable codereuse for future upgrade. Emphasis is on how to store the informationdescribing the model, how to speed up the computation by performingpre-calculation and cross-referencing each field components with theappropriate update functions and coefficients. The software is codedusing C++ programming language as it is widely supported at the mo-ment. Conversion to other OOP languages such as JAVA can be easilydone as both share many similarities in the syntax. The architectureand data structures (or objects as it is called in OOP) of the softwareallow a lot of room for expansion in the future. Berenger Perfectly

    Matched Layer (PML) ABC, ([3, 23]) can also be employed in placeof Murs first order ABC. This can be easily done by modifying thetABCobject of Section 5. Again this demonstrate the ease with whichsoftware written in OOP language can be modified while maintainingthe integrity of the whole software. Furthermore, digital integratedcircuits can also be incorporated by using the approach of Analog Be-havioral Modeling (ABM) [25]. Finally, it must be mentioned that theFDTD formulation does have its limitation at present. For circuits,which emphasize on steady-state sinusoidal response, the FDTD ap-

    proach would be considerably slower than Method of Moments (MoM)or Finite Element Methods (FEM).

  • 8/10/2019 fdtd simulation

    35/37

  • 8/10/2019 fdtd simulation

    36/37

    334 Kung and Chuah

    13. Massobrio, G. and P. Antognetti, Seminconductor DeviceModeling with SPICE, 2nd edition, McGraw-Hill, 1993.

    14. Strauss, R.,Surface Mount Technology, Butterworth-Heinemann,

    1994.15. Murray III, W. H. and C. H. Pappas, Borland C++ in Depth,

    McGraw-Hill, 1996.

    16. http://pesona.mmu.edu.my/wlkung/winfdtd exe.zip.

    17. Blood, W. R., MECL System Design Handbook, 3rd edition,Motorola Semiconductor Products Inc., 1980.

    18. Johnson, H. W. and M. Graham,High-Speed Digital Design Ahandbook of black magic, Prentice Hall, 1993.

    19. Smith, J. R., Modern Communication Circuits, 2nd edition,McGraw-Hill, 1998.

    20. Phillips Semiconductor, BFG520; BFG520/X, BFG520/XR,NPN 9 GHz wideband transistor, Technical Data,www.semiconductors.com, Oct. 1997.

    21. Agilent Technologies, Surface mount RF Schottkybarrier diodes: HSMS-282x series, Technical Data,www.semiconductor.agilent.com, 2000.

    22. Robertson, I. D. and S. Lucyszyn, RFIC and MMIC Design and

    Technology, The Institution of Electrical Engineers, 2001.23. Taflove, A. (ed.),Advances in Computational Electrodynamics

    The finite-difference time-domain method, Artech House, 1998.

    24. Kirschning, M. and R. H. Jansen, Accurate wide-rangedesign equations for frequency-dependent characteristic of parallelcoupled microstrip lines, IEEE Trans. Microwave Thoery andTechniques, Vol. 32, 8390, Jan. 1984 (Note, a correction of thepaper appears on Vol. 33 on the same journal, page 288).

    25. Duran, P. A., A Practical Guide to Analog Behavioral Modelingfor IC System Design,Kluwer Academics Publishers, 1998.

    F. Kungobtained his B.Eng. and M.Eng.Sc. in electrical engineeringfrom University of Malaya in 1994 and 1997 respectively. He workedin Intel Technology in Penang, Malaysia from May 1994May 1996,and in GMS Technology, in Selangor, Malaysia from June 1997June1999. He obtained his Ph.D. in electrical engineering, from Multimedia

    University, Malaysia, in 2003.

  • 8/10/2019 fdtd simulation

    37/37

    A finite-difference time-domain (FDTD) software 335

    H. T. Chuah obtained his B.Eng., M.Eng.Sc. and Ph.D., all inelectrical engineering, from University of Malaya, Malaysia. He iscurrently the Dean of Faculty of Engineering, Multimedia University.

    Chuah was the recipient of the inaugural Young Engineer Awardby the Institution of Engineers, Malaysia in 1991, and the NationalYoung Scientist Award (Industrial Sector) by the Malaysian Ministryof Science, Technology and the Environment. His research interestsare in applied electromagnetic, microwave remote sensing, and devicephysics.


Recommended