Introduction
One important use of the digital oscilloscope is as a debug tool. As a debug tool, it is important for the oscilloscope to find anomalous events quickly. This is generally for two purposes. One purpose is to show evidence of a suspected problem. Another is to show enough about a problem to enable the setting up of the trigger to isolate the problem. Isolation of the problem is accomplished by repeatedly triggering on a problem and viewing the behavior at various circuit locations to identify cause-and-effect relationships.
A good way to show evidence of problems is to trigger repeatedly on an edge of a waveform. With digital oscilloscopes, it is possible to build up a persistence view showing the multiple triggers overlapping. In this way, presumably an infrequent behavior occurring on the edge is captured.
The Traditional View of Anomaly Detection
The metric of usefulness of the digital scope in capturing anomalies is the average number of anomalies per second that the oscilloscope can accumulate on the screen. The reciprocal of this would be the average time to see the anomaly on the screen.
Traditionally, the method has been to trigger the oscilloscope in an edge trigger mode and view the persistence (analog-like) traces that overlap on each acquisition. After waiting for some period of time, hopefully one of these traces would show the anomaly.
When this type of method is used, the rate of anomaly capture can be calculated based on the edge rate of the waveform, the update rate of the oscilloscope, and the statistical frequency of anomalies occurring and is given by the following equation:1
$$AnomaliesPerSecond_{captured} = {{min(MaxUpdateRate EdgeRate)} * {{AnomaliesPerSecond}\over{EdgeRate}}}$$
Equation 1
1 min(a,b) is simply the lesser of a and b
This means that if the edge rate of the waveform does not exceed the update rate of the oscilloscope, then the scope captures every single edge (and therefore every single anomaly). When the edge rate of the waveform exceeds the update rate of the oscilloscope, the oscilloscope does not capture every edge and the number of anomalies per second captured is equal to the rate of anomalies occurring divided by the ratio of the edge rate and the scope update rate.
In this traditional view, when the edge rates are lower than the oscilloscope update rate everything works well, but when the edge rates increase beyond the oscilloscope update rate, things degrade. This is why many oscilloscope manufacturers have created very fast update rate modes of operation. Usually, these modes of operation are limited in a variety of ways such that they are useful only for the purpose of providing the traditional view of overlapping traces on edge triggered waveforms. In other words, they usually provide a picture or pixilated view only.
There is a relationship between anomaly frequency of occurrence in time and frequency of occurrence per edge in a signal. This relationship is interesting because it reveals that anomalies that occur very rarely per edge might occur quite frequently in time. Let’s take a situation where anomalies are occurring at a rate of once every five seconds on 200 MHz clock; a glitch for example. This means that the anomalies per edge would be calculated as:
$$AnomaliesPerEdge = {AnomaliesPerSecond \over {EdgeRate}}$$
Equation 2
In this example of a relatively frequently occurring anomaly – once every five seconds – the number of anomalies per edge is one in a billion. Using Equation 1, the number of seconds on average to detect an anomaly in this type of situation with an oscilloscope that has a fast update mode that updates at let’s say 100,000 updates per second would be 2.8 hours!
Again, this means that for an anomaly occurring once every five seconds, the scope would capture it after 2.8 hours of waiting.
The problem here is that while in the traditional method of anomaly detection the capability of the oscilloscope is directly proportional to the update rate, the fast update modes provided are not really that fast – or certainly they are not fast enough to accomplish the real problem. The user really wants an update rate that is much faster than provided to use the conventional approach.
The Trigger System
The problem with edge triggering to search for anomalies is the fact that each time the scope triggers on the edge and captures a waveform, some time is spent where the scope does not look at the waveform. This is called dead time. Many oscilloscope users are surprised at how large this dead time is relative to the time that the scope is live. In the example, the reason it takes the scope almost three hours to see an anomaly occurring every five seconds is because the oscilloscope sees only 0.2% of the edges occurring; it is dead 99.8% of the time even with this fast update mode. The scope sees only one out of every 500 edges of the waveform.
An oscilloscope with a smart trigger system is devised to mitigate this situation. When armed to trigger on a given smart trigger scenario, it sees every single edge of the waveform up until the trigger occurs. The dead time is only encountered after the smart trigger situation is met and the scope triggers. It is ideally suited for rare events. If a smart trigger is armed to detect a glitch used in the example, the scope will trigger on every one and the scope user will see every single one on the screen. The anomaly capture situation using a smart trigger scenario is given by the following equation:
$$AnomaliesPerSecond_{captured} = {min(MaxUpdateRate AnomaliesPerSecond)}$$
Equation 3
Thus, the number of anomalies captured in a given time is maximized using the trigger. Furthermore, as pointed out in the introduction, the anomaly would be isolated. In other words, since the scope would trigger on only the anomaly, other scope channels could be utilized to search for cause-and-effect relationships between the anomaly and behavior elsewhere in a circuit.
This all sounds simple, but there is a huge problem with the trigger scenario. It is the fact that the scope user would have to know ahead of time the exact nature of the anomaly. This is not generally practical.
TriggerScan™
Up to this point, we have seen that there are two ways of searching for rare events. The traditional method suffers from the fact that despite the use of fast update modes, the scope can take hours to find relatively frequent events. The use of the trigger system suffers from the fact that the scope user must know the exact nature of the problem he is looking for.
LeCroy developed a new way of searching for rare events called TriggerScan that solves these problems by intelligent use of the trigger system.
TriggerScan operates in two phases. In the first phase, the user acquires normal waveforms and trains the system. During the training, the oscilloscope analyzes the waveforms to determine what waveforms normally look like. Then, it develops a large set of smart trigger setups. These setups are devised to trigger on abnormal situations. As an example, if the waveform is a clock waveform and all edges have risetimes, periods, and amplitudes within observed statistical ranges, TriggerScan will develop smart trigger setups to trigger on slew rates, periods and amplitudes outside of these ranges. Once these smart trigger setups have been determined, the oscilloscope enters a second phase of operation by loading smart trigger setups, arming the oscilloscope, dwelling for a certain amount of time, then moving on. When acquisitions occur at any setting, the acquired waveforms are put in the persistence display.
If we assume that a particular anomaly is detected at one and only one of the trigger settings, then the number of anomalies per second captured is calculated as a modification of Equation 3:
$$AnomaliesPerSecond_{captured} = {{min(MaxUpdateRate AnomaliesPerSecond)}\over{TriggerSetups}}$$
Equation 4
Note that the effectiveness of TriggerScan is not dependent on the edge rate. It is important to compare Equation 4 with Equation 3. The TriggerScan scenario is penalized with respect to the smart trigger scenario by the number of trigger setups employed. Thus, if 100 trigger setups were employed, TriggerScan would be one percent as effective as the use of the smart trigger system alone. This seems like a large penalty but consider the tradeoff and the results. TriggerScan has reduced the effectiveness of the trigger system, but has automatically figured out the trigger settings and has completely automated the process. In our example, a traditional method utilized with a fast update rate mode of 100,000 updates per second produce an anomaly every 2.8 hours on average. Using the trigger system alone, the user sees every anomaly which occurs every 5 seconds. Using TriggerScan with 100 setups would find an anomaly in 500 seconds or 8.3 minutes on average. In this case, TriggerScan is 20 times more effective than the traditional fast update mode approach.
The plots on the right show a comparison of TriggerScan with fast update modes. The plots are for three different edge rates: 10 MHz (chosen because this is where TriggerScan is equally effective as fast update), 200 MHz (chosen because this is the edge rate used for most of the examples), and 500 MHz which shows that TriggerScan’s effectiveness improves with edge rate.
The assumptions made in these plots are:
- Fast update mode is 100,000 updates per second (some scopes are up to four times faster than this).
- 100 trigger setups are used for TriggerScan (usually less, but possibly more could be used).
Some observations are that as anomalies are more frequent, TriggerScan tops out at 100 ms per anomaly while fast update modes improve. More importantly, as edge rates increase, the advantage of TriggerScan increases. Fast update modes work best on frequent events occurring on slow edge rates and TriggerScan works best on infrequent events occurring on fast edge rates.
A scope user should decide whether he is interested mostly in rare or frequent events and whether he is interested in mostly slow or fast edge speeds when determining whether a fast update mode or TriggerScan is the best tool for a given application.
Other Considerations
TriggerScan is seen to be a viable part of the debugging toolset. In many cases, it outperforms fast update modes in rare event finding. There are some additional advantages of TriggerScan that should be pointed out. These advantages are due to the fact that the smart trigger system is employed and due to the fact that TriggerScan is not really a scope operating mode per se, but is an extension and automation of normal scope operation. The biggest advantages of the fact that TriggerScan does not involve a specific operating mode is the fact that the rest of the oscilloscope behaves just as it would normally.
In other words, when the scope triggers during TriggerScan operation, the user does not just get a pixilated view of the error, but instead gets full, long waveforms that can be analyzed using all of the oscilloscope tools. TriggerScan does not sacrifice the scopes power and analysis capability.
Not only is downstream waveform processing limited or excluded in many fast update mode implementations, other important internal processing is often foregone. An example might be the various calibrations and corrections performed on the waveform. In today’s modern high performance scope, almost all scopes employ some form of digital signal processing of the waveform for magnitude and phase correction of the signal. In some oscilloscopes, this DSP processing is turned off during fast update modes. When this happens, you will notice that the fast update mode waveform looks quite different than the waveforms seen during normal scope operation. Fast acquisition modes might not always show the true picture of the shape of the anomalies were corrections properly applied. TriggerScan, since it always operates the scope normally, does not suffer from these types of problems.
Finally, the fact that TriggerScan uses the smart trigger system allows it to help in the isolation of bugs. TriggerScan can leave the scope in a situation where the smart trigger system is set up to trigger on the anomaly. With the fast update modes, the user is left with a screen picture and he is on his own to try to duplicate the smart trigger setup that would trigger on the anomaly.
TriggerScan operates such that during scanning, it takes over the scope to automate the loading of various trigger setups. Because it is simply a state machine that operates the scope like a robotic scope user, it can be used easily to repeat tests with known trigger setups. The trigger setups can even be manually edited and stored. Lists of trigger setups can be created as a suite of automated compliance tests.
Conclusion
Fast acquisition modes are useful in traditional debugging usage when anomalies are not too rare and when edge speeds are relatively slow. These modes have problems with very rare anomalies and when edge speeds are relatively fast compared to the update rate of the oscilloscope.
TriggerScan is a way of improving the debugging situation. Its effectiveness at placing anomalies on the screen increases with edge rate and improves for rarer events relative to fast acquisition modes. For edge speeds in excess of tens of MHz, it will always update adequately for debug situations and is superior to fast acquisition modes for rare events.
Traces acquired in TriggerScan are at full sample rate, are fully corrected, can be long waveforms and can be used for complex waveform analysis.
TriggerScan can be used to look at other circuit locations during scanning or the trigger setups that acquire anomalies can be retained for further use during circuit debugging.
TriggerScan is a useful addition to the arsenal of debugging tools available to the LeCroy scope user.