Uncategorized

Mobility Modeling

Attached are pictures from a MOSFET simulation operating in the saturation region.

The simulation results are all for the same bias point using the combined electron mobility model.

The Klaassen (Philips) mobility model was implemented for doping and concentration dependence.

bulk_e

The Darwish (Lucent) model was then used to account for the mobility dependence on electric field normal to current flow.

mu_e_0

The combined mobility was then scaled by the velocity saturation and is with respect to the electric field parallel to current flow to get the final result.

vsat_e

Future work involves adapting the original Klaassen model so that it agrees with the modifications made in the Darwish paper.

The full implementation of the Klaassen model is presented here, and it tries to follow the original paper. The final mobility is placed on the edge connecting two nodes, and this is done using the geometric mean. Please let me know if you think there are any bugs in the implementation.


set mu_L_e "(mu_max_e * (300 / T)^theta1_e)"
set mu_L_h "(mu_max_h * (300 / T)^theta1_h)"
createNodeModel $device $region mu_L_e "${mu_L_e}"
createNodeModel $device $region mu_L_h "${mu_L_h}"


set mu_e_N "(mu_max_e * mu_max_e / (mu_max_e - mu_min_e) * (T/300)^(3*alpha_1_e - 1.5))"
set mu_h_N "(mu_max_h * mu_max_h / (mu_max_h - mu_min_h) * (T/300)^(3*alpha_1_h - 1.5))"
createNodeModel $device $region mu_e_N "${mu_e_N}"
createNodeModel $device $region mu_h_N "${mu_h_N}"


set mu_e_c "(mu_min_e * mu_max_e / (mu_max_e - mu_min_e)) * (300/T)^(0.5)"
set mu_h_c "(mu_min_h * mu_max_h / (mu_max_h - mu_min_h)) * (300/T)^(0.5)"
createNodeModel $device $region mu_e_c "${mu_e_c}"
createNodeModel $device $region mu_h_c "${mu_h_c}"


set PBH_e "(1.36e20/(Electrons + Holes) * (m_e) * (T/300)^2)"
set PBH_h "(1.36e20/(Electrons + Holes) * (m_h) * (T/300)^2)"
createNodeModel $device $region PBH_e "$PBH_e"
createNodeModelDerivative $device $region PBH_e "$PBH_e" Electrons Holes
createNodeModel $device $region PBH_h "$PBH_h"
createNodeModelDerivative $device $region PBH_h "$PBH_h" Electrons Holes


set Z_D "(1 + 1 / (c_D + (Nref_D / Donors)^2))"
set Z_A "(1 + 1 / (c_A + (Nref_A / Acceptors)^2))"
createNodeModel $device $region Z_D "${Z_D}"
createNodeModel $device $region Z_A "${Z_A}"


set N_D "(Z_D * Donors)"
set N_A "(Z_A * Acceptors)"
createNodeModel $device $region N_D "${N_D}"
createNodeModel $device $region N_A "${N_A}"


set N_e_sc "(N_D + N_A + Holes)"
set N_h_sc "(N_A + N_D + Electrons)"
createNodeModel $device $region N_e_sc "$N_e_sc"
createNodeModelDerivative $device $region N_e_sc "$N_e_sc" Electrons Holes
createNodeModel $device $region N_h_sc "$N_h_sc"
createNodeModelDerivative $device $region N_h_sc "$N_h_sc" Electrons Holes


set PCW_e "(3.97e13 * (1/(Z_D^3 * N_e_sc) * (T/300)^3)^(2/3))"
set PCW_h "(3.97e13 * (1/(Z_A^3 * N_h_sc) * (T/300)^3)^(2/3))"
createNodeModel $device $region PCW_e "$PCW_e"
createNodeModelDerivative $device $region PCW_e "$PCW_e" Electrons Holes
createNodeModel $device $region PCW_h "$PCW_h"
createNodeModelDerivative $device $region PCW_h "$PCW_h" Electrons Holes


set Pe "(1/(f_CW / PCW_e + f_BH/PBH_e))"
set Ph "(1/(f_CW / PCW_h + f_BH/PBH_h))"
createNodeModel $device $region Pe "$Pe"
createNodeModelDerivative $device $region Pe "$Pe" Electrons Holes
createNodeModel $device $region Ph "$Ph"
createNodeModelDerivative $device $region Ph "$Ph" Electrons Holes


set G_Pe "(1 - s1 / (s2 + (1.0/m_e * T/300)^s4 * Pe)^s3 + s5/((m_e * 300/T)^s7*Pe)^s6)"
set G_Ph "(1 - s1 / (s2 + (1.0/m_h * T/300)^s4 * Ph)^s3 + s5/((m_h * 300/T)^s7*Ph)^s6)"
createNodeModel $device $region G_Pe "$G_Pe"
createNodeModelDerivative $device $region G_Pe "$G_Pe" Electrons Holes
createNodeModel $device $region G_Ph "$G_Ph"
createNodeModelDerivative $device $region G_Ph "$G_Ph" Electrons Holes


set F_Pe "((r1 * Pe^r6 + r2 + r3 * m_e/m_h)/(Pe^r6 + r4 + r5 * m_e/m_h))"
set F_Ph "((r1 * Ph^r6 + r2 + r3 * m_h/m_e)/(Ph^r6 + r4 + r5 * m_h/m_e))"
createNodeModel $device $region F_Pe "$F_Pe"
createNodeModelDerivative $device $region F_Pe "$F_Pe" Electrons Holes
createNodeModel $device $region F_Ph "$F_Ph"
createNodeModelDerivative $device $region F_Ph "$F_Ph" Electrons Holes


set N_e_sc_eff "(N_D + G_Pe * N_A + Holes / F_Pe)"
set N_h_sc_eff "(N_A + G_Ph * N_D + Electrons / F_Ph)"
createNodeModel $device $region N_e_sc_eff "$N_e_sc_eff"
createNodeModelDerivative $device $region N_e_sc_eff "$N_e_sc_eff" Electrons Holes
createNodeModel $device $region N_h_sc_eff "$N_h_sc_eff"
createNodeModelDerivative $device $region N_h_sc_eff "$N_h_sc_eff" Electrons Holes


set mu_e_D_A_h "mu_e_N * N_e_sc/N_e_sc_eff * (Nref_1_e / N_e_sc)^alpha_1_e + mu_e_c * ((Electrons + Holes)/N_e_sc_eff)"
set mu_h_D_A_e "mu_h_N * N_h_sc/N_h_sc_eff * (Nref_1_h / N_h_sc)^alpha_1_h + mu_h_c * ((Electrons + Holes)/N_h_sc_eff)"
createNodeModel $device $region mu_e_D_A_h "${mu_e_D_A_h}"
createNodeModelDerivative $device $region mu_e_D_A_h "${mu_e_D_A_h}" Electrons Holes
createNodeModel $device $region mu_h_D_A_e "${mu_h_D_A_e}"
createNodeModelDerivative $device $region mu_h_D_A_e "${mu_h_D_A_e}" Electrons Holes


set mu_bulk_e_Node "mu_e_D_A_h * mu_L_e / (mu_e_D_A_h + mu_L_e)"
createNodeModel $device $region mu_bulk_e_Node "${mu_bulk_e_Node}"
createNodeModelDerivative $device $region mu_bulk_e_Node "${mu_bulk_e_Node}" Electrons Holes


set mu_bulk_h_Node "mu_h_D_A_e * mu_L_h / (mu_h_D_A_e + mu_L_h)"
createNodeModel $device $region mu_bulk_h_Node "${mu_bulk_h_Node}"
createNodeModelDerivative $device $region mu_bulk_h_Node "${mu_bulk_h_Node}" Electrons Holes


createGeometricMean $device $region mu_bulk_e_Node mu_bulk_e
createGeometricMeanDerivative $device $region mu_bulk_e_Node mu_bulk_e Electrons Holes
createGeometricMean $device $region mu_bulk_h_Node mu_bulk_h
createGeometricMeanDerivative $device $region mu_bulk_h_Node mu_bulk_h Electrons Holes

Uncategorized

Comments (0)

Permalink

Biosensor Applications in DEVSIM (Part II)

As a follow up to the previous post:
http://www.devsim.com/blog/?p=86

Here are the results when 3d versions of the structures were created. The active areas are in the center of the device, and the rest of the device are translucent.

Uncategorized

Comments (0)

Permalink

Updates

I recently submitted two abstracts to SISPAD 2009. Hope to find out in April if they will be accepted. I’m not sure what the pre-publication restrictions for SISPAD are, so I am not giving details at this time.

Uncategorized

Comments (0)

Permalink

New Website Design

Thanks to Addaption Technologies for putting together the new website. I’ll try my best to match up the theme here in the blog.

Uncategorized

Comments (0)

Permalink

gmsh for 2d mosfet

Here is a 2d mosfet meshed with Gmsh and loaded into Devsim. Note that this is the same structure and doping which was originally shown here in my first post.

It just looks a lot better having used a nicer meshing tool than the one built into the software.

As before, the red areas are the electron concentration.

Uncategorized

Comments (0)

Permalink

First 3d result

3d diode

3d diode

Turns out Gmsh was an excellent choice for a mesher.  It is a very usable tool for creating structures.  Almost reminds me of mdraw.

The result is a 3d (quasi-1d) diode structure.  The spot in the middle is the magnitude of the electric field.  Visualization is done in Paraview.

Uncategorized

Comments (0)

Permalink