Deep level transient spectroscopy (DLTS) is a powerful and commonly used technique to investigate the concentration and carrier binding energy of semiconductor defects by measuring capacitance transients at different temperatures. As such, it is a critical tool for the characterization of all forms of semiconductors. As an enabler of various DLTS modes for a variety of highly demanding applications, Zurich Instruments held this user meeting to bring together the community of users who may face common measurement challenges and allow them to share core competencies and know-how. We thank the speakers and all attendees for making this half-day event such a success.
Our first DLTS User Meeting focussed on:
- Celebrating our customers' achievements with high-level scientific talks;
- Fostering interactions, exchanging ideas and networking via open Q&A sessions and a round table; and
- Empowering researchers by sharing best practices, tips and tricks in the form of detailed tutorials to create a community of super-users.
If you missed the user meeting, recordings of the talks and tutorials can be viewed here.
This blog post presents a selection of questions posed during the user meeting, which have been answered live or retrospectively by Dr. George Nelson (GN), Dr. Ramon Schifano (RS), Meng Li (ML), Roberto Foddis (RF) or me (Tim Ashworth - TA). If you have any follow-up questions, please get in touch with us.
Ramon, could you clarify what you mean by a false root here?
Answer from RS: A false root is a mathematical artefact with no physical counterpart related only to the transients post-processing, i.e. the weighting function used to extract the emission rate. There is no defect which is related to this analytical feature.
If the DUT is a pin device what will happen for DLTS or TAS?
Answer from RS: For a pin junction, depends on the doping, but could be probing the i part or the n part, the easiest way would be to work with a p+-i-n or n+-i-p type junction in this way the source of the signal is obvious and the interpretation of the results simpler. If the i region and defects located there are the ones of interest, for TAS the defect level-Fermi level crossover has to occur in the i region. On the other hand, in the case of DLTS varying the pulse height might help in distinguishing between emission from defects located in the i and n/p region. Consider double-pulse measurements to allow for depth profiling.
Regarding the horizontal geometry for DLTS, could it be used to avoid current leakage/tunneling when measuring very thin films (compared to the vertical geometry)?
Answer from RS: In my experience, vertical structures generally present lower leackage currents respect to horizontal geometries unless some kind of capping is used. If the film is very thin one possibility even by using a vertical configuration (i.e. thin film + bulk/substrate) would be to use DLTS with pulses covering and not covering the thin film to establish which part of the signal is coming from the region of interest, i.e. the thin film.
TAS can capture any type of charge if their emission rate lies in the same applied frequency at some certain temperature. Is this the same with DLTS measurements?
Answer from RS: In the case of DLTS, the rate windows of the weighting functions used to analyze the transients are the characteristic frequencies to which the emission rate has to be compared.
TAS can recognize the origin of defects, i.e., interface states, barrier, bulk defects. Does DLTS have the same capability?
Answer from RS: It is possible also in the case of DLTS to establish the spatial location of the defects either by using pulses of different height or by using double pulsing. In the latter case, defect profiles can be extracted, while the former permits a more rough estimate of the defects spatial position.
What is the sensitivity of TAS comparing to DLTS? How small can defect concentration be to be detected?
Answer from RS: In my experience, TAS sensitivity is typically ~10-100 times lower than the DLTS one (∆C/C~10-4). On the other hand, there is no upper limit related to the dilution approximation in the TAS case.
Is it possible to show the instrument setup for the DLTS measurement with the MFIA?
Answer from GN: A schematic diagram of my DLTS setup with the MFIA can be found here.
Can you please explain how to set up voltage pulses using the internal pulse generator on the MFIA?
Answer from TA: To generate voltage pulses, we use the Threshold Unit of the MFIA to produce an on/off signal with the desired duration, and then scale this using the Aux module of LabOne. The result is a user-definable amplitude and duty cycle. You can read more about this in this blog post.
George, can you highlight your favourite feature of LabOne when writing API scripts?
Answer from GN: The LabOne Web UI has a log which allows you to try things out in the UI before moving to the API. This made things simple and avoided looking through glossary of nodes.
Can you use the LabOne Plotter while running the API script?
Answer from GN: Yes, this is possible. I leave the Plotter open while collecting the data with the script.
Does DLTS data depend on the frequency of the measurement? For example, Boonton measures at 1 MHz; what will change if we measure at 1 kHz?
Answer from GN: In DLTS theory there is no special lock-in frequency, the frequency should ideally be much larger than the emission rate of the trap and not so high that series resistance becomes dominant. In practice, the higher frequency will give better signal to noise ratio but there are many other practical considerations.
Answer from TA: The test frequency is indeed a parameter that should be considered. For example, recent work from Reichert and others on perovskites used DLTS at 80 kHz (see this paper). The MFIA allows for a free choice of test signal frequency (and amplitude), and in the first tutorial you can see the acquisition time at 1 MHz is 10 µs, while at 80 kHz it is around 90 µs.
We currently use an HF2LI for our DLTS measurements for recording long transients with high sample rates. How does the maximum continuous sample throughput to the PC of the HF2LI compare with the MFIA/MFLI?
Answer from TA: With the HF2LI, you can sample continuously at 400 kSa/s for all demodulators. For your DLTS setup, I assume you are using two demods to measure both voltage and current. Therefore you can expect continuous streaming of 200 kSa/s. This compares to the 107 kSa/s of the continous streaming rate of the MFIA. Gated data transfer allows you to increase this rate for short periods of time, see this blog post.
What does it mean that we have "strong compensation" during a capacitance measurement, and how do we overcome it?
Answer from TA: This message comes from the LabOne Confidence Indicators. Strong Compensation is one of several flags which are raised if LabOne believes there is a possible compromise to the data quality. In this case, the correction due to the User Compensation is higher than the threshold considered reasonable. To solve this, you can add a load stage to your user compensation routine or consider varying the frequency over which the User Compensation is carried out. This will allow for a better compensation of the cables and fixtures and avoid this message in the future. Please note, the confidence flags do not affect the data saved. And keep in mind that you are free to adjust the trigger threshold in the advanced tab of the Impedance Analyzer Module.
George, have you considered including the HF2LI in the mfiaDLTS2?
Answer from GN: It would be possible, I think, but I do not have that instrument available.
Is it possible to acquire a DLTS spectrum using the MFIA from capacitance transients?
Answer from TA: The MFIA acquires the transients and can provide the voltage pulse. It can be triggered to average many transients to optimise the SNR. However, the final deconvolution and analysis would need to be done in a third-party software. Consider the MATLAB software by George Nelson, called mfiaDLTS.
Is it possible to implement constant-capacitance through software-based feedback alone?
Answer from TA: Yes, you have two alternatives here. Firstly, you can use an API script to maintain the capacitance at a constant value by varying the offset voltage or signal to a light source. This will be on a timescale of at least 20 ms due to the latency of the API control, so will not be suitable for fast transients. Secondly, you can use the MF-PID option on the MFIA or MFLI. With this option, you can set a current set point as a proxy for the capacitance and then maintain this at a fixed value by varying the offset voltage. The MF-PID is very fast, with a 50 kHz maximim loop filter bandwidth.
What advantages does the MFIA have over the Boonton 7200?
Answer from TA: The Boonton 7200 is an excellent and well-respected instrument for DLTS acquisition. The MFIA offers several benefits beyond the 7200 which allow for ease of acquisition and enable different modes of DLTS such as low-frequency DLTS. The comparative benefits of the MFIA can be summarised as follows: 1. Faster capacitance measurement time of 10 µs at 1 MHz. 2. Requires no recovery time during the voltage pulse so the whole transient can be acquired. 3. Wider capacitance range, see the reactance chart here 4. Variable test frequency from 1 mHz to 5 MHz 5. Variable test signal amplitude from 500 nV to 10 V 6. Triggerable DAQ module so no addition ADC is required 7. Generate square pulses with sharp edges of just 5 µs 8. LabOne User Interface for optimising & acquiring transients using multiple tools simultaneously 9. Control via modern APIs such as Python, MATLAB or LabVIEW 10. Measure not just capacitance but also current & most impedance parameters 11. Includes complementary techniques such as Impedance and Admittance spectroscopy 12. Ability to measure impedance at two different frequencies enabling unique modes of DLTS 13. PID option for controlling closed loop modes of DLTS.
I would need the settings for acquiring the capacitance vs change in transient measurements. Could you also share the measurement settings please?
Answer from TA: We've already sent these via email. Just drop the settings file into the download area in the Config tab and then select them from the dropdown menu. You can adjust to your own setup and then save under another name.
Do you have a recommendation for logging the actual temperature with the MFIA?
Answer from TA: There are two ways to log the temperature with the MFIA. Firstly, the temperature controller could be integrated as part of a script which logs the temperature. Secondly, you could use the auxiliary inputs to log a monitor voltage coming from the temperature controller. This signal can then be scaled and acquired by the DAQ or Plotter modules simultaneously with the capacitance.
Is it possible to extend the voltage range for the 4-terminal configuration?
Answer from TA: The limiting factor here is the compliance voltage (+/- 3 V) of the differential inputs Hpot & Lpot. If you choose to use voltage higher than this, you should take steps to ensure the voltage is stepped down before being measured. The user compensation can be used to account for an external stage. Alternatively, you could work in 2-terminal configuration and work with voltages of +/- 10 V.
How do you deal with data loss while averaging transients? Is there any clever way other than discarding every transient that suffered from missing data points?
Answer from GN: In the earlier versions of the MATLAB code, I would toss out complete transients. But in the later versions, the data loss was reduced and I would vertically align the transients, which were well-aligned due to the trigger, and then toss out individual points. Any data loss is logged by the code and below 1% is OK for good measurements.
Answer from TA: Thanks to the MFIA not requiring a recovery time after the voltage pulse, you can acquire the full transient without data loss. The MFIA can continuously stream data at 107 kSa/s without data packet loss. If you have a challenging noise environment, it is possible to set a threshold of absolute Z outside of which the data point will be ignored and set to NaN. Any data loss between the MFIA and the host computer is flagged in LabOne.
Does the MATLAB API for LabOne also work with GNU Octave?
Answer from GN: I would be interested in knowing this.
Answer from TA: Sorry, the APIs of LabOne do not currently support GNU Octave.
Is it possible to run double-pulse measurements using the MFIA?
Answer from GN: I'm not familiar with any available code, but this could be developed from my code. Or you could just wait for me to develop the code, as I’m interested in this technique and it should be easily possible to add it.
Answer from TA: Yes, the voltage pulses generated by the MFIA can be varied in amplitude, duration and polarity. The four units of the LabOne Threshold can each produce one square pulse, allowing for continuous application of up to four pulses with different durations and polarity to be applied to the sample while measuring the capacitance transients with the LabOne DAQ module.
How fast can you acquire the data? I mean samples/s?
Answer from TA: The MFIA can acquire impedance parameters in a continuous mode at a maximum of 107 kSa/s. For faster data transfer, gated acquisition can be use for up to 856 kSa/s for short bursts. You can read more here.
How can we get a copy of the LabVIEW VI (and its sub-VIs)?
Answer from TA: Please send an email to us and we'll be happy to share the LabVIEW code which Roberto demonstrated during the even.
Can the APIs reinitialise the MFIA to its default state (overwriting the existing settings of all nodes)? Is this already included when an interface is opened? If not, is there any other way of assuring the instrument is in a known state before controlling it?
Answer from ML: You can use the command "disable everything" in the Python API. This rolls back everything into the default state, similar to rebooting.
Can we expect the same performance in sample rate when using the APIs?
Answer from ML: Yes, you can expect exactly the same performance when running from an API script as you do with the UI.
Can you save data in CSV format via the API?
Answer from ML: In our Python API, there is built-in syntax to call different saving formats. However, I personally prefer to save partial data, as this saves me the work of stripping out the parameters.
Answer from RF: Yes, the LabVIEW API can save in CSV, but please note that this is not compressed.
How does the Python toolkit compare with the standard Python API?
Answer from ML: The toolkit can be used in a standalone manner but can be seen as a higher-lever extention to the Python API. The toolkit offers a shortcut to many functions to reduce the number of parameters you need to set. Please keep in mind that the syntax of the toolkit is different to the API log, so you'll need to make some manual changes.
How can I add my third-party temperature controller to the LabVIEW script?
Answer from RF: Our LabVIEW API controls the MFIA, so in addition you'll need to have the labVIEW API from the third party. These can be for example VISA, or it can be a DLL which takes care of a specific function in labVIEW. Once you have this set up, the LabVIEW scripts control both the MFIA and your temperature controller.