Digital To Analog and Analog To Digital Conversion: D/A or DAC and A/D or Adc
Digital To Analog and Analog To Digital Conversion: D/A or DAC and A/D or Adc
D/A Conversion
Computer
DAC
A/D Conversion
DAC
8 bits
Computer
A/D
Digital to Analog conversion involves transforming the computers binary output in 0s and 1s (1s typically = 5.0 volts) into an analog representation of the binary data
Resistor values correspond to binary weights of the number D3 D2 D1 D0 , i.e. 1/8, 1/4, 1/2, and 1
Difficulties: 1. This setup requires a wide range of precision resistors A 10 bit DAC needs resistors ranging from R to R/1024. 2. The circuit driving the DAC (usually a computer) must supply a wide range of currents for a constant Vout
As was seen in the Workbench example, the output voltage from a DAC can change by only discrete amounts, corresponding to the level associated with a 1 bit binary change.
A modification of the weighted resistor DAC is the so called R-2R LADDER DAC, that uses only 2 different resistances
Voltmeter reading is determined by the binary number ABCD and the resistor weights
MSB =
= =
1/2 of Vref
1/4 of Vref 1/8 of Vref
LSB
= 1/16 of Vref
1 0 1 1 = 1/2 (5) + 1/4 (0) + 1/8 (5) + 1/16 (5) 3.4 volts
In actual DACs, the converters will drive amplifier circuits in most cases
r2rdac.ewb
If one wants only positive or negative output, one can use a BASELINE ADJ. for the Op Amp
baseline.ewb
8 bits
A/D
Computer
An ideal A/D converter takes an input analog voltage and converts it to a perfectly linear digital representation of the analog signal
If you are using an 8-bit converter, the binary representation is 8-bit binary number which can take on 28 or 256 different values. If your voltage range were 0 - 5 volts, then 0 VOLTS 5 VOLTS 0000 0000 1111 1111
An 8-bit converter can represent a voltage to within one part in 256, or about 0.25 %. This corresponds to an inherent uncertainty of LSB (least significant bit).
Decimal 128 = 0111 1111
MSB
LSB
Notice the bits are designated B7 - B0. Bit B7 is the Most Significant Bit while B0 is the Least Significant Bit
Voltage (Volts)
00000000 00000001 00000010 00000011
Analog Voltage
1 LSB
. . . . . . . . .
11111100
Resolution (1/2N)
6 8 10 12 14
16
1/65536
0.07
1. Counter Type
2. Integrating or Dual Slope 3. Parallel or Flash
4. Successive Approximation
Counter Type
START
Comparator
Vin
Control Logic
clock
DA C
Counter
Digital Output
When START is received, control logic initializes the system, (sets counter to 0), and turns on Clock sending regular pulses to the counter.
As the Clock sends regular pulses to the counter, the counter outputs a digital signal to the Digital-to-Analog converter
Comparator START
Vin
Control Logic
clock
DA C
Counter
Digital Output
As the counter counts, its output to the D A C generates a staircase ramp to the comparator.
Comparator
START
Vin
Control Logic
clock
DA C
Counter
Digital Output
As the ramp voltage increases to the comparator, it rises closer and closer to Vin at which point the comparator shifts states
Comparator
START
Vin
Control Logic
clock
DA C
Counter
Digital Output
When the ramp voltage exceeds Vin , the comparator output shifts which signals the control logic to turn off the clock
Comparator
Vin
Vin
Note that the conversion time depends on the size of the input signal
Vin
Conversion time
Conv.time
Once the digital output has been read by the associated circuitry, a new start signal is sent, repeating the cycle.
Comparator
START
Vin
Control Logic
clock
DA C
Counter
Digital Output
With a counter type A/D, if the signal is varying rapidly, the counter must count up and reset before each cycle can begin, making it difficult to follow the signal.
Comparator
Vin
Track & Hold Logic
clock
Up/Down Counter
DA C
Digital Output
-Vref
clock
Control logic
Counter
Digital Output
integrator Vin
comparator
-Vref
clock
Control logic
Counter
Digital Output
As conversion is initiated, the control logic enables the clock which then sends pulses to the counter until the counter fills (9999)
integrator
Vin
comparator
-Vref
clock
Control logic
Counter
Digital Output
As the counter resets (9999 0000), an overflow signal is sent to the control logic this activates the input switch from Vin to
integrator Vin -Vref , applying a negative reference voltage to the integrator
comparator
-Vref
clock
Control logic
overflow
Counter
Digital Output
The negative reference voltage removes the charge stored in the integrator until the charge becomes zero.
At this point, the comparator switches states producing a signal that disables the clock and freezes the counter reading. The total number of counts on the counter (determined by the time it took the fixed voltage Vref to cancel Vin ) is proportional to the input voltage, and thus is a measure of the unknown input voltage.
The operation of this A/D requires 2 voltage slopes, hence the common name DUAL-SLOPE.
fixed time
measured time
Since this A/D integrates the input as part of the measuring process, any random noise present in the signal will tend to integrate to zero, resulting in a reduction in noise.
These type of A/D s are used in almost all digital meters. Such meters usually are not used to read rapidly changing values in the lab. Consequently the major disadvantage of such converters (very low speeds) is not a problem when the readout update rate is only a few times per second.
Flash Converters
If very high speed conversions are needed, e.g. video conversions, the most commonly used converter is a Flash Converter. While such converters are extremely fast, they are also very costly compared to other types.
Parallel or Flash Converters The resistor network is a precision voltage divider, dividing Vref (8 volts in the sample) into equal voltage increments (1.0 volts here) to one input of the comparator. The other comparator input is the input voltage
Each comparator switches immediately when Vin exceeds Vref . Comparators whose input does not exceed Vref do not switch.
A decoder circuit (a 74148 8-to-3 priority decoder here) converts the comparator outputs to a useful output (here binary)
The speed of the converter is limited only by the speeds of the comparators and the logic network. Speeds in excess of 20 to 30 MHz are common, and speeds > 100 MHz are available ($$$$$).
The cost stems from the circuit complexity since the number of comparators and resistors required increases rapidly. The 3bit example required 7 converters, 6-bits would require 63, while an 8-bits converter would need 256 comparators and equivalent precision resistors.
While integrating or dual-slope A/Ds are widely used in digital instruments such as DVMs, the most common A/D used in the laboratory environment is the successive approximation.
Successive approximation converters are reasonably priced for large bit values, i.e. 10, 12 and even 16 bit converters can be obtained for well under $100. Their conversion times, typically ~ 10-20 s, are adequate for most laboratory functions.
Successive-Approximation A/D
analog input
D/A Converter
Vref
Digital Output Data
STRT
At initialization, all bits from the SAR are set to zero, and conversion begins by taking STRT line low.
Successive-Approximation A/D
analog input
D/A Converter
Vref
Digital Output Data
STRT
First the logic in the SAR sets the MSB bit equal to 1 (+5 V). Remember that a 1 in bit 7 will be half of full scale.
Successive-Approximation A/D
analog input
D/A Converter
Vref
Digital Output Data
STRT
The output of the SAR feeds the D/A converter producing an output compared to the analog input voltage. If the D/A output is < Vin then the MSB is left at 1 and the next bit is then tested.
Successive-Approximation A/D
analog input
D/A Converter
Vref
Digital Output Data
STRT
If the D/A output is > Vin then the MSB is set to 0 and the next bit is set equal to 1.
Successive bits are set and tested by comparing the DAC output to the input Vin in an 8 step process (for an 8-bit converter) that results in a valid 8-bit binary output that represents the input voltage.
FS
D/A output for 8-bit conversion with output code 1011 0111
FS
CLOCK PERIOD
1001
0111 0110 0101
0100
0011 0010 0001
Note that the successive approximation process takes a fixed time - 8 clock cycles for the 8-bit example.
For greater accuracy, one must use a higher bit converter, i.e. 10-bit, 12-bit, etc. However, the depth of the search and the time required increases with the bit count.
adc-dac2.ewb