Arbitrary waveform generators (AWGs) are flexible, powerful tools for creating any kind of waveform imaginable. Their broad range of capabilities, however, can make these instruments intimidating to learn and time consuming to use. Today's advanced AWGs, though, minimize the intimidation and simplify their use by offering new, user-friendly interfaces and advanced editing features.
In reality, most waveforms don't follow precisely defined functions, such as sine, square, triangle, and pulse. While many waveforms may display a predictable sequence, they also tend to exhibit arbitrary behavior that, at best, can only be described in very complex terms. This behavior may stem from random activity or the complex combination of various segments or functions. Some of this is the result of careful design—like a TV broadcast signal—while other behavior is the product of glitches, drift, noise, and other anomalies or failures.
AWGs let designers precisely create these "real-world" signals, whether analog or mixed signal. An AWG then becomes an indispensable tool during the design, test, and manufacture of electronic components and systems, especially for simulating worst-case conditions during design verification. The AWG accepts a wave-shape definition, stores the digitized image in its memory, and outputs the analog equivalent via its digital-to-analog converters (DACs). It doesn't care about periodicity, binary logic levels, or operational cycles. It simply puts out a continuously changing series of voltage levels at a fixed clock rate—each equivalent to a point stored in its memory—to create any imaginable waveform or bit pattern.
The most advanced AWGs deliver high-speed clock rates of up to 2.6 Gsamples/s, with up to 8 Mpoints of waveform memory. This deep memory allows for high signal fidelity and long signal-playback times. AWGs also can have anywhere from one to four analog output channels with up to 14 digital output channels. Depending on the instrument, the AWG can support up to 10-V p-p output and 14 bits of vertical resolution.
Engineers rely on AWGs in a variety of design arenas. Semiconductor application engineers employ them for high-performance, mixed-signal, functional test and device characterization to test the effects of real-world signal conditions on a device. In physical layer communications, designers use them to create transient spikes and subthreshold "runt" pulses on complex telecom signals. To support the demands of the communications industry, many AWGs provide special telecom-oriented test features that make troubleshooting faster, easier, and more repeatable.
These features include application-specific graphical editors for creating network data signals such as OC-48, gigabit Ethernet, and Fibre Channel; combining an AWG's digital-marker outputs with the main digital output to perform high-speed mixed-signal testing for network semiconductors; and software applications for creating complex digitally modulated or baseband signals. AWGs also are heavily used in disk-drive manufacturing to simulate the jitter effects on the disk drive, as well as amplifier noise, sample-clock jitter, quantization error, and interpolation error.
While AWGs excel at producing mixed-signal waveform shapes that mirror the arbitrary nature of real-world conditions, creating and editing these signals can appear difficult at first glance. New users of these programmable waveform generators approach them with a mixture of fear, uncertainty, and doubt.
As a result, AWG manufacturers have gone to great lengths to make them more user friendly by incorporating graphical user interfaces in some of the more advanced units. These screen-based control panels are linked to soft keys that access such functions as range and mode selection, display format, and marker placement. Scrolling, cut/paste selection, cursor position, and file selection are controlled by front-panel knobs and buttons. And, every pertinent function, status, and value is available on screen only a menu away.
Some AWGs offer several ways to create and edit wave shapes. These capabilities can include a standard waveform library, the ability to capture waveforms from a digital-phosphor oscilloscope (DPO) or a digital-storage oscilloscope (DSO), graphical waveform editing, digital timing entry, an equation editor, and a sequence editor.
If the AWG has a standard waveform library, the fastest way to create a waveform is to select a wave shape from the library. A waveform library typically includes the basic sine, square, triangle, ramp, pulse, and dc wave shapes. Some instruments offer more advanced signal shapes such as video-sync and color-burst signals, disk read-/write-head signals, and a variety of modulated communication waveforms including AM, FM, PSK, PWM, FSK, and QPSK. Even noise is a standard wave shape in some libraries. These wave shapes can be used directly, or they can be modified with one of the editors to create the desired real-world signal.
Another way to quickly create a signal is to capture waveforms from a digital oscilloscope (either a DPO or a DSO). Newer AWGs have built-in controller capabilities, making it easy to read waveforms directly from a DPO or DSO via a GIPB interface. This is an extremely powerful feature when troubleshooting, since the actual signal conditions causing a problem can be captured and immediately transferred to the AWG.
Some examples of waveforms an engineer might want to capture include a noise spike on a power line, a runt or missing pulse in a digital pattern, or perhaps excessive noise caused by some external source. Once the waveform is transferred to the generator, it can be saved and modified using any of the on-board editing features.
There is a third and equally effective way to immediately get up and running: The designer downloads test vectors from an external simulator in an ASCII file format. Most AWGs are set up to accept ASCII files. The test vectors often come from the CAD simulation files developed during the design of the system or from popular third-party software, such as MathCAD and MatLab.
It's very desirable to use vectors developed for simulation when verifying the performance of a prototype. The exact same vector set for actual physical verification gives the designer an important and useful baseline from which to assess the performance of the actual design. Some AWGs offer software conversion applications to take the simulator's ASCII data and reformat it for the target AWG. To support the manipulation of these large waveform files, some AWGs now provide Ethernet ports to speed the transfer of waveform files to and from the user's network.
To create more complex waveforms, advanced AWGs offer a variety of on-board editors that enable designers to either modify existing waveforms and add important real-world details, or create new waveforms.
The graphics display editor makes it easy to create unique signals or modify existing ones. Vertical cursors define the area on the displayed wave shape where modifications can be made. Similar to standard graphics software found in a PC, the graphics editing capabilities include cut, paste, copy, draw, scale, and other general functions. Specific features for electrical waveform editing include clip, marker, normalize, and math. Waveform pan/zoom also is available to examine fine details of the wave shape. There is even an "undo" function so the user can return to the previous wave shape. (Fig. 1).
Moving beyond the graphics editor, some AWGs offer parallel digital outputs that really are the buffered digital lines that drive the generator's DAC. These AWGs provide a digital table and timing entry editor. Since an arbitrary waveform is really a digital data pattern, the table editor lets the user display and modify individual bits in a waveform. The waveform data can be displayed in binary, hexadecimal, or real notation. The timing display shows the timing for each bit of the vertical resolution. If the generator has 10 bits of vertical resolution, then 10 separate pieces of vertical axis waveform data will be displayed for editing.
Disk-drive testing is just one example of how emulating a digital data stream can be useful. For instance, a designer may want to enter a data pattern that represents a physical signal in the write-read process. In this case, a 62-bit pattern that can be directly entered as a coded binary pattern with the digital pattern editor might be used. Once input, the next step would be to scale the signal to match the target bit interval. For the sake of simplicity, let's say the bit interval is 2.5 ns so that each pattern bit represents 2.5 ns. If an AWG is used with a 2.4-Gsample/s clock rate, then each signal point represents 6 data points in the generator's memory. The user could then expand this 62-bit pattern into a 372-point record.
Or Define The Signal Using Math
In other situations, designers might find it easier to define the wave shape in mathematical terms using the generator's equation editor. This approach is especially useful for designers of communication equipment and disk drives because of the complex nature of the signals in these products. A user can define wave shapes by entering a polynomial formula set of equations. AWG equation editors support a wide range of operators, functions, and built-in variables, such as sine, cosine, exponential, logarithmic, and square root. Other mathematical functions can include round, min, and max. The defined equation can be dozens of lines long.
Let's look at an example that demonstrates the ease with which a complex waveform can be quickly created with the equation editor. In wireless communication design, multitone testing can efficiently test a filter's response and identify intermodulation products resulting from saturation or non-linearities in supposedly linear component stages. Without an arbitrary waveform generator, the designer would have to assemble as many signal generators as desired tones, phase-lock them to a common reference, and hope they all relate correctly. Using an AWG, the relationship between carrier phases is implicit in the multitone equation.
An AWG equation editor specifying 11 tones centered at 70 MHz in 1-MHz steps—from 65 to 75 MHz—can be seen in Figure 2. In this case, the 1-MHz steps suggest a waveform period of 1 µs. When the record repeats at a 1-MHz rate, all the tones are continuous in phase. A spectrum analyzer plot of the multitone signal is shown in Figure 3.
For more demanding waveforms, higher-end AWGs offer more advanced editors. For instance, with a fast Fourier transform (FFT) graphical editor, a designer can edit waveforms in the frequency domain to generate signals that comply with test or design standards. This capability is especially useful for jitter, motor control, and media testing, making it as easy to graphically modify the signal in the frequency domain as it is in the time domain. When the FFT editor is invoked, data is automatically transformed into the frequency domain. When the designer is finished modifying a signal, an inverse FFT transformation automatically converts the waveform back into the time domain.
Some AWGs also support convolution. Convolution lets the user form the desired output signal by multiplying two different waveforms in the frequency domain. A designer may wish, for example, to create a real-world signal for a serial-network application. The first step would be to create an ideal T1 serial data stream—perhaps using the equation editor—to achieve the appropriate time intervals. Then, to make the signal more realistic, a second waveform could be created based on a corrupted pulse pattern captured from a DSO. When these two are convolved, the resulting signal retains the timing relationship of the first waveform but with a pulse shape defined by the second waveform.
With any of these editors, the user creates just one waveform pattern. Designers, however, typically need a full test suite made up of several waveform patterns to fully exercise the device or system. Modern AWGs include a feature called waveform sequencing that makes it easy to define a sequence of signals. This function lets the user define the sequence of waveforms to output, the order, and the number of repeats or loops for each test signal. There are two different types of sequencers that are available—basic and advanced—and it's important to understand how they differ.
Basic sequencers execute simple instructions, such as loops, repeating limited segments of the waveform memory. These rudimentary sequencers require the data to be compiled and stored in memory. This means that to execute 100 repetitions of a sequence, 100 copies of it need to be stored in the waveform memory. This can be a problem when it is necessary to assemble a waveform by concatenating many small segments and repeating that complex waveform—with variations—for long marathon test runs consisting of days, weeks, or even months. Massively long patterns are valuable when designers try to accumulate a history of errors for analysis. They also are essential when designers run long-term stress tests. No matter how large the AWG's internal memories are, they will eventually prove inadequate.
To get around this memory problem, advanced sequencers use special instructions to execute loops, jumps, go-tos, and similar instructions. As a result, it's no longer necessary to store each sequence in memory. Instead, a pattern set is stored once and executed multiple times. This capability not only makes this type of sequencing more memory efficient, it's also the key to effectively achieving infinite pattern length. For instance, an AWG could support up to 8000 different sequences. With advanced sequencing, it would allow each of those segments to be repeated thousands of times. The final result would be a concatenated waveform stream made up of potentially hundreds of millions of segments!
Another advantage of the advanced sequencers is that they can respond to external, asynchronous interrupts, making them true real-time sequencers. This enables the arbitrary waveform generator to respond immediately to error prompts—from the system under test, for example. The generator can be programmed to respond to multiple trigger states. When a particular trigger occurs, the unit's sequencer will react by jumping to a pre-designated subroutine in waveform memory.
One way to utilize this flexible capability would be to design a characterization procedure that iteratively widens a nominal pulse toward a template violation. When the violation finally causes an error, the sequencer could then jump to a routine that gradually narrows the pulse to pinpoint the violation. The sequencer also could be programmed to jump to a troubleshooting routine. In either case, the generator's sequencer brings a unique level of automation to verification and characterization tasks.
With the power of today's newest arbitrary waveform generators, it's easy to create complex, real-world signals that can be used to test and characterize next-generation systems. Short learning curves and swift mastery of these powerful generators are a result of the graphical user interfaces, multiple editors, and the numerous ways that information can be entered. The ease and speed with which this can be done means that next-generation designs will get to the market faster than ever before.