This article presents a custom digital-to-analog-conversion design built around a high-speed DAC from Analog Devices.
In a previous article I discussed the microcontroller portion of a custom-designed arbitrary waveform generator PCB:
The microcontroller is one of two ICs that provide most of the board’s functionality; the other is a DAC, more specifically, the AD9708 from Analog Devices. This component is a member of the “TxDAC” family of D/A converters. It supports update rates (AKA sample rates) up to 125 million samples per second—more than adequate for my needs.
This particular part has a resolution of 8 bits, though it is pin compatible with 10-bit, 12-bit, and 14-bit versions. This is a handy feature: you can start with the lower-cost 8-bit version, and if you eventually decide that you need more resolution, you can upgrade to one of the higher-resolution (and higher-cost) options without excessively disrupting the existing schematic and layout.
As you can see from the application diagram, few external components are needed. A few caps, a resistor for setting the full-scale output current, and (though not shown in the diagram) proper signal-conditioning circuitry for the differential D/A output currents.
Before we move on, I’ll mention some other handy features of this device; keep these issues in mind next time you’re trying to choose the right DAC (which is not a particularly easy task—a Digi-Key search for “DAC” with the “In Stock” option selected gives over three thousand results).
Here is the DAC portion of my arbitrary waveform generator:
The most complicated portion of the DAC design is the output interface. The first thing you need to do is understand what exactly is going on with these IOUTA and IOUTB pins.
The AD9708 has current (as opposed to voltage) outputs. The digital word applied to the data pins directly controls the current flowing out of the IOUT pins, not the voltage that appears at these pins. But why are there two? The datasheet refers to them as differential, but I find this terminology somewhat confusing. When I hear “differential,” I think of signals that use positive and negative polarity, and this makes me think that IOUTA has positive current (i.e., flowing out of the pin) and IOUTB has negative current (i.e., flowing into the pin). But this is not the case. The real situation is conveyed by the following diagram:
So both pins are sourcing current, and in this sense both currents are positive. The “differential” aspect arises from the fact that the current magnitudes are balanced: if one pin has high current, the other has low current. This is why I said earlier that the full-scale current occurs when the input data is at the maximum value or the minimum value. At the maximum value, IOUTA sources the full-scale current; at the minimum value, IOUTB sources the full-scale current. It seems to me that “complementary” would be better than “differential” in this case, but if the experts at Analog Devices prefer “differential,” I’m not going to argue.
Now that we understand the basic DAC hardware connections and the nature of the outputs, the next question is, How do we turn these complementary/differential current magnitudes into a normal voltage signal? Well, that’s kind of a long story, but don’t worry, we’ll cover the details—or at least the details of my implementation—in the next article.