What is Digital to Analog (D/A) conversion?
The process of conversion of a digital input signal (1s and 0s) into an analog output signal is called digital to analog conversion (D/A). The digital signal usually encoded using a binary code consisting of 0s and 1s. In electronics, the circuits and systems which help in converting the binary code into analog signals are called digital to analog converters. A Digital to Analog Converter (DAC) typically has multiple binary inputs and a single output. The number of inputs of a DAC depends on the architecture of DAC.
Types of Digital to analog converters
Some of the DAC types are listed below:
- Binary weighted DAC
- R-2R ladder DAC
- Pulse-width modulation (PWM) DAC
- Delta-Sigma Modulated DAC or Oversampling DAC
- String DAC or thermometer coded DAC
- Current switching/steering DAC
- Switched capacitor DAC
Binary Weighted DAC
A binary weighted DAC is a type of DAC where binary inputs carry weights according to the place value of binary digits. These inputs represent various magnitudes, and when combined, they influence the analog output proportionally, with higher-weighted inputs having a greater impact. The Most significant bit carries the highest weight and least significant bit carries the lowest weight.
There are many ways to assign weight to a bit as in current switching/steering architecture where the current sources are scaled according to the bit they represent. In this example we will use inverting amplifier as summer to add different weights. We will scale resistors according to the weights they represent.
In above figure, a binary word (b3b2b1b0) is applied at the input. The output Vout is dependent on each input bit bi and resitor Ri. b3 is the MSB and b0 is the LSB. bi can assume value between 0 and -Vref. To increase the contribution of b3 at the output, R3 can be reduced. To decrease the contribution of b0 at the output R0 can be increased. Also, when all the bits are turned-on, it should reflect the full-scale value Vref. The difference between adjacent code (e.g., 0011 and 0100) should be equal to 1-LSB (Vref/24).
The following circuit has all our requirements of a binary weighted DAC mentioned above:
The generalised equation of N-bit Binary weighted DAC (implemented as Fig 3) can be written as:
$$V_{DAC}=\frac{V_{ref}}{2}\left(\cfrac{b_{N-1}}{2^{0}}+ \cfrac{b_{N-2}}{2^{1}}+\dots{}+\cfrac{b_{0}}{2^{N-1}}\right)$$