SemiVi

Drift-Diffusion Solver

Drift-Diffusion Solver

The ddsolver package includes drift-diffusion solver to simulate semiconductor devices. Also, Mixed-mode-system consisting of the semiconductor devices and the external components can be solved.

Salient Features
  • In DD-solver, coupled Poisson, electron, and hole continuity equations are solved.
  • Mixed-mode-system consisting of the semiconductor devices and the external components can be solved
  • The solver can perform quasi-stationary DC ramp, small-signal analysis, and transient analysis

Salient features - Drift-diffusion solver

  • The solver can perform a quasi-stationary DC ramp, small-signal analysis at a fixed DC bias, and a transient analysis.
  • Coupled Poisson, electron, and hole continuity equations are solved.
  • Mixed-mode-system consisting of the semiconductor devices and the external components can be solved coupled with drift-diffusion equations.
  • Physics-based models for bulk and interface mobility, recombination phenomena, traps, etc. in semiconductors available.
  • Model parameters are editable in the material config file, thus allowing model calibration.
  • Convinient Python interface can be used to perform simulations and postprocess results.

Easy-to-use Config file

  • Specify simulation setup in an intuitive config file.
  • Define active models -- region-wise, material-wise.
  • Set Voltage Ramps-- quasistationary, transient, small-signal.
  • As an illustration, a commands in the config file look as follows:

    File: {Device = "FinFET_str.cfg";
    Out = "FinFET";}

    Contacts: {...}

    Physics*Region*RegSi: {
    Mobility: {DopingDep: { Masetti: [];}
    FieldDep: { Lombardi: []; }
    Recombination:{SRHRecombination=["DopingDep"];}
    } }

    Solve: {Static*Poi:{ Coupled: ["Poisson"];}
    Quasistationary*Dr: {initstep = 1E-3;
    Ramp: { Voltage*drain = 1.;}
    Coupled: ["Poisson","Electron"] } }

  • For exact commands in the config file, please refer to the user-guide and the examples therein.

Convinent Python Interface

  • Import meshed device and setup simulation.
  • Perform drift-diffusion simulations.
  • Retrieve data for postprocessing in Python.

Results Visualization

  • I-V characteristics stored in csv files.
  • Spatial Data stored in hdf file.
  • {it xdmf} script stored for visualization in {it paraview}.
  • TimeAverage: Stores temporal average of the data.
  • Doping distribution

    Spatial distribution of electron currentSpatial distribution of electric field

Material Properties and Composition

  • Material config file is loaded at the start of the simulation.
  • List and edit parameters of all models.
  • Define composition dependence (linear and quadratic) of the parameters in semiconductor alloys, e.g. SiliconGermanium.
  • As an illustration, a material config file look as follows:

    BandStructure: {
    BandGap: {
    // [XFrac0, val0, ... ]
    Chi0*Xdep = [0., 4.07,
    0.45, 3.575, 1., 3.5];
    Eg0*Xdep = [0., 1.424,
    0.45, 1.985, 1., 2.17]; }
    ...
    DoS: { Formula = 0;
    Nc300 = 2E19; Nv300 = 2E19;
    me = 0.91; mh = 0.53; }
    }

  • For exact material config file, please refer to the user-guide and the examples.

Small-signal Analysis

  • ACAnalysis: DC time(s) at which analysis is done.
  • Nodes: Contacts to be included in the AC analysis.
  • Jacobian at the bias point is used to perform small-signal analysis. Admittances and capacitances are written in the csv file.
  • Effect of small-signal voltage at drain on electron densityEffect of small-signal voltage at gate on electron density

Mixed-mode System Analysis

  • Mixed-mode Analysis solves the circuit-system containing electronic device which is connected to the external components.
  • System section defines external circuit and links the Device named MOS1 to it.
  • Illustration of a mixed-mode system

Electro-thermal simulations

  • Electro-thermal simulations solve Poisson and/or continuity equations with heat transport equation.
  • ThermalContacts act as heat-sink at a set Temperature.
  • In ThermalProperties, list active thermal models.
  • In Coupled, add Temperature to include heat equation.
  • Temperature distr. in Copper plate at 1VTemperature induced Copper plate conductivity variation at 1V

User-manual and examples

  • A detailed user-manual describes available analyses and how to perform,
  • physical models and their usage
  • Settings in a config file and their use