A simple coarse/fine audio or signal attenuator can be built by combining two
8-bit DACs to yield an effective resolution of up to 14 bits (*see
the figure*). Taking a close look at the figure, resistors R_{1}
and R_{2} are all that's needed to combine the current outputs of a
dual 8-bit DAC like the AD7528.

R_{1} and R_{2} attenuate the input signal into DAC B by the
desired amount. For example, if R_{1} = 63 × R_{2}, then
ideally the "fine" reference voltage of DAC B is 1/64 the "coarse"
reference of DAC A, and the total range covered by DAC B is equal to 4 LSBs
of DAC A. To illustrate further, if V_{in} = 2.56 V, then the reference
voltage of DAC B is 40 mV and the theoretical LSB size for DAC B is 156 mV.
Whether or not all of DAC B's bits are usable (their combined output remains
monotonic) depends on the ratio of R_{1} and R_{2}, and the
input offset voltage of amplifier A1, which contributes a code-dependent noise
gain term.

There are a number of drawbacks to consider, however, when dealing with this
circuit. First, the "fine" DAC reference voltage isn't simply a function
of the ratio of R_{1} to R_{2}. It must also include the loading
effect of the DAC reference input resistance appearing across R_{2}.
Getting a precise, repeatable reference for DAC B is extremely difficult. The
problem is defused somewhat by making the value of resistor R_{2} much
lower than the minimum DAC ladder resistance.

A second problem is that the temperature coefficient (TC) of R_{1}
and R_{2} won't match that of the DAC ladder. This will cause a shift
in the value of the "fine" DAC reference, and thus a shift in the
DAC B's weight.

These problems can be overcome by including R_{3} in series with RFB
A, which is the on-chip feedback resistor of DAC A. R_{3} must have
a value equal to the parallel combination of R_{1} and R_{2}.^{1}
Choosing this value ensures that the DAC ladder resistance's value drops out
of the circuit transfer function, making the DAC B reference voltage solely
a function of the ratio of R_{1} to R_{2}. R_{3} should
also have a similar TC to R_{1} and R_{2}, but these TCs don't
have to match the TCs of the DACs at this moment. R , in series with the DAC
A reference input and equal to R_{3}, compensates for R_{3}
in the A1 feedback loop.

The output voltage expression for the complete circuit is:

V_{out} = -D_{A} V_{in} - D_{B} V_{in}
\[R_{2}/(R_{1} + R_{2})\] where D_{A} and D_{B}
are the fractional representations of the digital input code N in decimal (i.e.,
D_{A} = N_{A}/256 and D_{B} = N_{B}/256), and
where R_{3} = R_{4} = R_{1} R_{2} /(R_{1}
+ R_{2}).

Reference:

1. "Input Resistor Stabilizes mDAC's Gain," A. Paul Brokaw, *EDN*,
January 7, 1981, p. 210.