Interband tunneling current in a highly-doped nitride heterojunction

Introduction

We compute interband tunneling current through a highly-doped heterojunction by nextnano++ simulation and Python post-processing. We follow the methods in the following publication of Jean-Yves Duboz and Borge Vinter [Duboz2019], using fewer approximations wherever possible:

This tutorial uses the Python script nextnanopy/templates/InterbandTunneling_Duboz2019_nnp.py to automate the simulation of the nextnano++ input file InterbandTunneling_Duboz2019_nnp.in and post-calculation of interband tunneling current.

The script

The Python script does the following while sweeping the bias:

  1. Runs the nextnano++ simulations based on the user-defined parameters

  2. From the simulation output folder, load the envelopes Fvj,z1(z), Fvj,z2(z), and Fci(z) together with the electrostatic potential ϕ(z). The units are 1/nm1/2 and V, respectively.

  3. Differentiates the potential.

  4. Calculates the dipole matrix elements using the position-dependent material parameters.

  5. Plots the matrix elements as a function of position.

  6. Integrates the product over the device.

  7. Calculates tunneling current density for individual transitions in units A/cm2.

  8. Sums up the tunnel current density for all possible transitions.

After all simulations and post-calculations, the Python script exports the tunnel I-V curve in the following formats:

  1. Image file with the format specified by the user

  2. *.dat file

The output folders are indicated in the console log. The *.dat format is useful if you compare I-V curves using the nextnanomat overlay feature.

Options in the script

Effective ffield

If the Boolean variable CalculateEffectiveField_fromOutput = True (the default), then the script calculates the position-dependent effective field

Mijσ=αZσjP1EgFvj,zσ(z)Fciσ(z)qϕ(z)zdz

based on the computed electrostatic potential. When CalculateEffectiveField_fromOutput = False, the assumption in the paper is used.

ϕ(z)z=1Vnm
Kane’s parameter

If the Boolean variable KaneParameter_fromOutput = True (the default), then the script reads in the Kane’s parameter P in from the nextnano++ output to evaluate

Z|z|S=1EgZ|pz|S=PEg

In this case, an 8-band kp simulation with exactly the same device geometry will be performed so that nextnanopy can extract the Kane parameter.

If KaneParameter_fromOutput = False, then P is calculated from the assumption in [Duboz2019] (EP = 15 eV).

Reduced mass

If the Boolean variable CalculateReducedMass_fromOutput = True, then the script calculates the position-dependent reduced mass mr in

Iij=2πqσ|Mijσ|2mr2π2=qmr3σ|Mijσ|2

using the nextnano++ outputs of the effective masses.

When CalculateReducedMass_fromOutput = False (the default), then the assumption as in [Duboz2019] is used.

Results

The structure is an AlGaN/GaN p-i-n junction with 2 nm GaN interlayer.

The energy overlap between the hole states and electron states increases as the bias, leading to larger tunnel current.

../../../../_images/bandedge_02.png
../../../../_images/bandedge_07.png

The Python script calculates dipole matrix elements from the simulation results:

../../../../_images/Dipole_matrix_element.png

from which we obtain the tunnel current as a function of bias:

../../../../_images/TunnelCurrent_vs_bias.png

Figure 2.4.584 Interband tunneling current in a nitride p-i-n junction. Following the paper, backward bias is taken to be positive in this plot.


Last update: 17/07/2024