Oscilloscope triggering circuits can be adapted to other applications, as precision synchronizers. Both analog and digital ‘scope triggering has been enhanced by various auto-trigger schemes. This tutorial overview of ‘scope triggering circuits and schemes presents the basics of trigger generators and also some enhancements.
Oscilloscope triggering systems appear at the front-panel as two basic controls: trigger level and slope. Implementation can be envisioned in its simplest form as a comparator and slope polarity selector, as shown below.
The comparator outputs an edge when the voltage waveform from the trigger source, which can be the internal trigger signal from the vertical amplifier, an external BNC connector, or the 50/60 Hz power line, crosses the voltage level set by the TRIGGER LEVEL control. Then an XOR gate either inverts or not the comparator edge, effectively selecting which polarity of edge will be the active (positive-going) edge as the trigger event.
The above scheme is not generally practical, for it lacks the ability to select which of the sequence of active trigger edges will start the scope sweep, or in a DSO, start waveform digitization and storage. In analog scopes, the sweep must not be restarted until it has completed, retraced back to its starting position on the left side of the screen and settled. During this time, holdoff timing keeps the sweep from running. Holdoff is added using a D flop, and the trigger circuit grows as shown below. The flop also eliminates comparator output bounce from slow inputs.
The D flop trigger output at Q is kept low by the assertion of holdoff at the reset (R) input. While held off, the trigger is low. When holdoff releases, the next trigger from the XOR gate causes Q to become high, thus generating the sweep gating function for analog scopes.
Adding the flop to the above trigger generator might seem all that is needed, though one more refinement is required. What if the holdoff releases at the moment a new trigger asserts the clock input of the flop? With insufficient setup time, a race condition can occur causing the Q output transition to be delayed by an indeterminate amount of time. It becomes high after some delay, starting the sweep late, and causing trigger jitter on the screen as the sweep starts late relative to the triggering event; or it might generate a glitch or “runt” pulse. To avoid this, an additional flop is triggered after a delay, as shown in the next addition to the trigger circuit, shown below.
The delay line lets the second flop be triggered somewhat later than the first, giving the output of the first flop time to settle to a valid logic level before the second flop is clocked. The delay time is chosen so that an indeterminate level at the D input of the second flop occurs for a statistically-insignificant fraction of the input triggers. This scheme is a basic practical triggering circuit. It is essentially what is found in most triggering oscilloscopes in some particular implementation. And it is what is referred to on the front-panel by the third trigger control – the mode control – as the normal triggering mode.
A mode is a particular structural configuration of an electronic system. Modes are selected by electromechanical or electronic switches. Added to the basic triggering scheme in some scopes is the auto triggering mode, a mode where the triggering system triggers itself. Why would we ever want that to happen? In normal mode, if no input waveform is present, no trace will occur on the scope screen. There is nothing to see. Consequently, we do not know where the trace is set by the vertical position control and do not know where 0 V, or ground, is either. On analog scopes, the trace might not even be on the screen were it to run. Some means of forcing a trigger is needed.
This problem is solved with the auto triggering mode. The auto circuit inputs the output trigger, firing a MMV (one-shot) with a timeout that exceeds the period of a 50 Hz waveform. The reasoning is that the line frequency is the lowest frequency we would want to trigger on without interference from auto triggering. The MMV is retriggerable and does not change output state until no trigger occurs for its timeout duration. When it times out, it generates an auto-trigger and forces the sweep to run. With no actual trigger input, auto-trigger runs the sweep at a somewhat less than line-frequency rate. Then when a source trigger comes in, the auto MMV is shut off again and disappears.
The next advance in triggering convenience beyond the auto triggering mode is peak-to-peak auto . In this mode, attention is turned to the trigger level control. For a given waveform the range of the trigger level will be wasted beyond the voltage range of the waveform for no triggering will occur at the range extremes. To make the full range of this control useful, positive and negative peak detectors acquire the maximum and minimum voltages of the waveform and output them to the two ends of the trigger-level pot, shown below.
There is no setting of the pot outside the range of the trigger-source waveform. Tektronix 7000 series scopes have featured this triggering mode. One disadvantage of this scheme is that the peak detectors must function at the full bandwidth of the scope. At high frequencies, the detectors do not respond fast enough to output the exact peaks and the trigger range becomes less than the peak-to-peak range of the source waveform.
Another way to set the trigger level is to automatically scan the trigger level voltage through its control range until it encounters the source waveform, causing a trigger. This auto-level scheme does not require circuits having full bandwidth beyond those of the existing trigger generator. When I invented it in the late 1970s, it was implemented as shown below.
A DAC output sums with the front-panel trigger level control and when a trigger occurs, the scanning ceases. The disadvantage of this scheme is that the triggering will occur at a random level, though slope remains selectable. The TRIG IN fires the MMV whenever triggering of the sweep occurs, and causes the clock to be gated off. The counter count is thereby held at the triggering level, produced by the DAC and summed with the trigger level control to become the auto-trigger level. If triggering does not occur beyond the timeout of the MV, it enables the gate, the counter counts and the search for a triggering level commences. As it does, the trigger level is crossed once per scan, causing an auto-triggering of the sweep. Auto-level is therefore an elaboration on auto-trigger mode which also provides automated level-setting somewhere within the triggering range of the signal.
The merits of auto-level relative to pk-pk auto are given in the following table.
Peak-Peak Auto Auto-Level Maintains trigger point at the same phase of signal. Trigger point is random along given polarity of slope. Triggers over 20 % to 80 % of the signal range. Triggers over normal-mode trigger range. Trigger control range is always over the pk-pk range of signal. Trigger control range fixed around variable automatic level. Performance related to signal frequency and duty-ratio because of full-bandwidth circuitry. Performance not affected by frequency or duty-ratio of signal; no high-frequency circuitry. Calibration adjustment required to set peaks. No circuit calibration needed. High-frequency circuits cost more than auto-level circuits. Costs less than pk-pk auto in μC-based ‘scope. Noticeable trigger level settling time. “Instantaneous” triggering.
Besides the random level at which triggering occurs, the other main weakness of auto-level is the trigger range problem. For a trigger level range of n screens, the auto-level range must be n + 1 screens to trigger on an on-screen signal with the trigger level control set arbitrarily. For example, as shown below, for two screens of range, the auto-level range is 3 screens. When auto-level is active, for the trigger level at one extreme, the trigger range is extended by auto-level by 1.5 additional screens.
For a large signal, it is possible for auto-level to trigger at any point in its range. Consequently, the auto-level DAC output biases the trigger-level control by +/-(n + 1)/2 screens. For n = 2, this is +/-1.5 screens. The control has a range of +/-n /2 screens or +/-1 screen. With the DAC output at +1.5 screens, the trigger-level control can only extend down to 1.5 − 1 = 0.5 screens, which is the top of the displayed screen.
With a μC, the auto-level scheme can be improved and added to existing scopes without interfacing to high-frequency circuitry. The μC needs a trigger input bit-line, a DAC output, and an ADC input for the trigger level voltage, to allow the μC to set the trigger level directly, without bias. This solves the trigger-range problem in that the scanned range can always be offset by the control setting.
As for the random trigger point, instead of scanning a triangle-wave of trigger level, the μC can instead do a binary chop (successive approximation) to most quickly determine the source waveform range, then set a trigger value at midrange, to let the front-panel control span this range, always centered. For n bits of resolution of the trigger level control, n successive-approximation samples of triggering are needed to set the level. This removes the advantage over pk-pk auto of near-instantaneous automatic trigger settling (although the original auto-level scheme could be retained with another trigger-mode switch position). At low sweep speeds, 8 or 9 sweeps could take an annoyingly long time to settle, though at the auto-mode sweep rate of around 40 Hz, this is only 200 ms, less than human response time.
The particular implementation of auto-level depends to some extent on the scope particulars. However, the amount of circuitry (including coding for the μC version) is small and the above description should be adequate to start in the right direction for do-it-yourself enhancers of test equipment, no less oscilloscope trigger-system designers.