Going Beyond Edge Triggering to Debug Using Oscilloscope Triggers

Publisher:未来感觉Latest update time:2019-11-09 Source: eepw Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

  Introduction

  The oscilloscope is a fundamental instrument for electrical engineers, but I often find that some engineers fail to use its triggering function effectively. Triggering is often considered to be very complex, and there is a tendency to go directly to the lab and ask an expert to help set up the trigger if there are any questions. The purpose of this article is to help engineers understand the basic principles of triggering and strategies for using triggering effectively.


  What is a trigger?

  Any oscilloscope has limited memory, so all oscilloscopes must use triggers. A trigger is an event of interest that the oscilloscope should find. In other words, it is something that the user wants to find in the waveform. A trigger can be an event (i.e., a problem in the waveform), but not all triggers are events. Examples of triggers include edge triggers, glitch signal triggers, and digital pattern triggers.


  The reason why oscilloscopes must use triggers is that their memory capacity is limited. For example, the Agilent 90000 series oscilloscope has a memory depth of 2 billion samples. However, even with such a large memory, the oscilloscope still needs some events to distinguish which 2 billion samples need to be displayed to the user. Although 2 billion samples may sound very large, it is still not enough to ensure that the oscilloscope memory can capture the event of interest.


  The memory of an oscilloscope can be thought of as a conveyor belt. Whenever a new sample is taken, it is stored in memory. When memory is full, the oldest samples are deleted to allow the newest samples to be stored. When a trigger event occurs, the oscilloscope captures enough samples to store the trigger event in the required location in memory (usually in the middle), and then displays this data to the user.


  Repeated sampling mode and single sampling mode

  In the past, the most common mode in which an oscilloscope operated was in repetitive mode. This meant that once the oscilloscope triggered and displayed data to the user, it would immediately begin searching for the next trigger event. This is why oscilloscope waveforms update so frequently.


  Any oscilloscope needs time to re-arm the trigger in order to trigger and display data to the user. This time is also called "hang time". During the hang time, the oscilloscope cannot capture any waveform. Therefore, the shorter the hang time, the fewer events will be missed. For example, if a glitch signal happens to appear during the hang time, it will not be displayed on the oscilloscope's display. If this glitch signal is a rare event, the user may think that there is no glitch signal in the waveform, but in fact it is. Therefore, the shorter the hang time of the oscilloscope, the lower the probability of missing important events in the waveform.


  Another way to express this concept is "update rate", which is the number of waveforms per second. For example, the Agilent 7000 series oscilloscope has an update rate of 100,000 waveforms per second.


  The single sampling mode is used to find a single trigger without continuing to acquire more waveforms. Therefore, when the user wants to find a certain event, check the cause of the event and the problem that occurred after the event, the single sampling mode can be used. This mode is especially important for analyzing waveforms that are not repetitive and change with each operation.


  Automatic mode and trigger mode

  What happens if no trigger event occurs? This is a very good question. In this case, the waveform on the screen will not update. This is not what we want because the user may not know how to change the trigger to get the waveform on the screen. For example, if the probe slips off, the oscilloscope will stop triggering. However, if the screen does not update, the loss of signal will not be obvious.


  To solve this problem, oscilloscopes have a mode called "Auto" triggering. In this mode, if a trigger cannot be found within a period of time, the oscilloscope will automatically trigger to update the screen. Usually, there is some indicator on the oscilloscope (such as an LED on the front panel) to indicate whether the last trigger was a real trigger or an automatic trigger. This way, if the user sees the "Auto" indicator, they will know that the trigger they set did not occur. For example, if the user set the trigger to be a glitch signal, they will know that the oscilloscope did not detect the glitch signal.


  However, as you will recall from the previous paragraph, when auto-triggering occurs, it means that after each trigger, there is a hang time while the oscilloscope re-arms. To avoid this time entirely, the oscilloscope should be changed to "triggered" mode. (This is called "normal" mode on some oscilloscopes.) In "triggered" mode, the oscilloscope will not trigger unless a trigger event is found. Therefore, if the user sets the trigger mode to glitch and the oscilloscope never triggers, the user can be confident that the glitch did not occur (at least as far as the oscilloscope can detect).


Normal trigger mode

Edge trigger


  Edge triggering is the most common trigger of all trigger modes. The reason why it is used so frequently is that all waveforms have edges, and as long as the trigger level is set correctly, this trigger mode can work properly. At the same time, this advantage is also its biggest disadvantage, because it can trigger very frequently on most waveforms, so it is very similar to Auto Trigger.


Glitch signal/pulse width/timeout trigger


  While many problems can be easily found using just an edge trigger, sometimes engineers must use more complex triggers. The simplest of these is the pulse trigger. A pulse trigger is defined as a period of time above (positive pulse) or below (negative pulse) a threshold level. The most common pulse trigger is the glitch trigger, which is often used to trigger on pulses that are less than a minimum width. This is an example of a trigger violation because the oscilloscope will indicate a problem whenever it triggers.


  One confusing aspect of pulse width triggering with a maximum time value is the time at which the trigger occurs. In some cases, the user may want the oscilloscope to trigger immediately when the time value is exceeded. This is called a "timeout" trigger because the oscilloscope does not require a complete pulse to trigger. In other words, the timeout trigger will occur even if the second transition does not occur.


  In contrast, what we call a "pulse" trigger will not trigger until the second jump occurs. That is, for a positive pulse, even if the maximum time is exceeded, it will not trigger until the falling edge. This means that triggering after the time limit point can be performed well. Therefore, the usage rate of timeout triggering is much higher than that of pulse width triggering. Since this is not intuitive, we provide users with two options, users can use timeout triggering or pulse end triggering. If the timeout option is selected, the pulse width trigger at this time will be exactly the same as the timeout trigger.


  Another confusing thing about pulse width triggers is that they are not all trigger violations. While a glitch is clearly a trigger violation, a long pulse can also be a normal event. So it depends on whether the pulse width is specified as a condition for a trigger violation.


Rise time and fall time


  The next type of violation trigger is the rise time trigger and the fall time trigger. They can be used to find edges that rise or fall too fast or too slow. This type of trigger is defined by two trigger levels (logic high and logic low) and the maximum and minimum time the signal can be between these two levels.


  One confusing aspect of rise time triggering and fall time triggering is that the trigger voltage thresholds are not dependent on the automatic measurement voltage thresholds. For example, it would be normal to measure the rise time of a signal and expect the rise time trigger to trigger on the same time value. However, in many cases, the measurement thresholds default to 10% and 90% of the signal voltage range. Because the trigger thresholds are independent, it is easy for the user to mistakenly set different thresholds, such as 5% and 95%. In this case, the user may be confused because the measurement shows a rise time value, but using the same time value does not cause the oscilloscope to trigger.

Setup and hold trigger


  Another type of violation trigger is setup and hold trigger. Of course, this requires the use of data signals and clock signals. This trigger also requires the specification of setup time, hold time, or both. When the setup and hold time violation trigger conditions are detected, the oscilloscope will trigger.


Runt Pulse Trigger


  A glitch is a very narrow pulse, while a runt pulse is a very runt pulse. A runt pulse is defined by three voltage levels. A runt trigger occurs if a signal passes through two thresholds (in the same direction), then passes through one of the thresholds again without passing through the third threshold. For example, if the three thresholds are 1V, 2V, and 3V, and the signal goes from 0V to 2.3V and then back to 0V, this is a runt pulse because it passes through 1V, 2V on its rise, and then 2V on its fall.


  The most confusing part of this trigger is the definition of the three threshold levels. Usually, the threshold levels are defined as 10%, 50%, and 90% which is just fine, but it is not intuitive, why do we need three threshold levels instead of just two?


Window Trigger


  Window trigger is an advanced trigger that uses two voltage thresholds and two time values. Window trigger is triggered when the signal enters or exits a certain voltage range. In addition, time can also be a range, so you can specify the minimum and maximum time that the signal is within (or outside) a certain voltage range as the trigger condition. This provides great flexibility for performing a variety of different triggers.

[1] [2]
Reference address:Going Beyond Edge Triggering to Debug Using Oscilloscope Triggers

Previous article:Application of variable low-pass filter in eliminating noise interference
Next article:Research technology on radio frequency interference on UART communication ports

Latest Test Measurement Articles
Change More Related Popular Components
Guess you like

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号