Download presentation
Presentation is loading. Please wait.
1
Introduction to data converters
Chapter 15 Introduction to data converters
2
Importance of Data Converters in Signal Processing
3
INTRODUCTION Analog-to-digital converters (ADCs) translate analog quantities, which are characteristic of most phenomena in the "real world," to digital language, used in information processing, computing, data transmission, and control systems. The input voltages and currents are "normalized" to ranges compatible with assigned ADC input ranges. Digital-to-analog converters (DACs) are used in transforming transmitted or stored data, or the results of digital processing, back to "real-world" variables for control, information display, or further analog processing. Analog output voltages or currents from DACs are direct and in normalized form, but they may be subsequently post-processed (e.g., scaled, filtered, amplified, etc.)
4
Digital-to-Analog Converter (DAC) and Analog-to-Digital Converter (ADC) Input and Output Definitions
5
The "most significant bit" (MSB) is the bit carries the most weight
The number of digital bits, in either DAC input or ADC output, is called the (apparent) resolution of the converter The "most significant bit" (MSB) is the bit carries the most weight MSB is also used as an adjective The "least significant bit" (LSB) is the bit carries the least weight LSB is also used as an adjective In straight binary, the subscripts correspond to the power of 2 associated with the weight of a particular bit in the sequence E.g.: b15b14…b2b1b0 b15 is the MSB bit, and b0 is the LSB bit
6
natural or straight binary code
Binary codes are most familiar in representing integers; i.e., in a natural binary integer code having N bits, the LSB has a weight of 20 (i.e., 1), the next bit has a weight of 21 (i.e., 2), and so on up to the MSB, which has a weight of 2N-1 (i.e., 2N/2). The value of a binary number is obtained by adding up the weights of all non-zero bits. When the weighted bits are added up, they form a unique number having any value from 0 to 2N - 1. Each additional trailing zero bit, if present, essentially doubles the size of the number.
7
Full-scale (abbreviated FS) is independent of the number of bits of resolution, N.
A more useful coding is fractional binary which is always normalized to full-scale. Integer binary can be interpreted as fractional binary if all integer values are divided by 2N. For example, the MSB has a weight of ½ (i.e., 2N-1/2N = 2-1), the next bit has a weight of ¼ (i.e., 2-2), the LSB has a weight of 1/2N (i.e., 2-N). When the weighted bits are added up, they form a number with any of 2N values from 0 to (1 - 2-N) of full-scale. Additional bits simply provide more fine structure without affecting full-scale range.
9
Unipolar Binary Codes, 4-bit Converter
10
Transfer Function for Ideal Unipolar 3-bit DAC
11
Transfer Function for Ideal Unipolar 3-bit ADC
12
BIPOLAR CODES In many systems, it is desirable to represent both positive and negative analog quantities with binary codes. Commonly used bipolar codes offset binary twos complement ones complement sign magnitude codes offset binary and twos complement are by far the most popular.
14
Offset binary For offset binary, the zero signal value is assigned the code 100……0 The sequence of codes is identical to that of straight binary. The only difference between a straight and offset binary system is the half-scale offset associated with analog signal. The most negative value (-FS + 1 LSB) is assigned the code 0……001, The most positive value (+FS - 1 LSB) is assigned the code 11…11 To maintain perfect symmetry about mid-scale, the all-zeros code (0000) representing negative full-scale (-FS) is not normally used. It can be used to represent a negative off-range condition or simply assigned the value of the 0001 (-FS + 1 LSB).
15
Offset binary code for 3-bit DAC
16
Offset binary code for 3-bit ADC
17
2’s complement Twos complement is very easy to accomplish using a simple inverter or taking the complementary output of a "D" flip-flop. Twos complement, for conversion purposes, consists of a binary code for positive magnitudes (0 sign bit), and the twos complement of each positive number to represent its negative. The twos complement is formed arithmetically by complementing the number and adding 1 LSB. For example, -3/8 FS is obtained by: Get the code for the absolute value 0011 taking the twos complement of the resulting code: 1100 Adding 1 LSB to obtain: 1101 Twos complement makes subtraction easy. For example, to subtract 3/8 FS from 4/8 FS, add 4/8 to -3/8, or 0100 to The result is 0001, or 1/8, disregarding the extra carry.
18
Relationships Among Bipolar Codes
19
Resolution How fine the analog range is divided into finite number of discrete values May be expressed in several different ways: the weight of the Least Significant Bit (LSB) parts per million of full-scale (ppm FS) millivolts (mV), etc. # of LSB intervals contained in FS Log2(last #): bits Different devices (even from the same manufacturer) will be specified differently must translate between the different types of specifications if they are to compare devices successfully.
20
Quantization: The Size of a Least Significant Bit
10 bits with 1 V FS give 1mV, or 1000ppm, or 0.1% LSB
21
Ideal transfer curve of high resolution DAC/ADC place digital code with x, and analog value with y
22
2’s compliment 11…11 10..00 01..11 00…00 -FS 0 V FS
23
GAIN AND OFFSET ERRORS
24
Gain error Gain error FS 0 V -FS
25
INTEGRAL NONLINEARITY ERRORS
INL measures how far away the actual transfer curve is from a linear fit line INL_k is the amount of deviation at code k INL is the maximum of INL_k The fit line can be an end point to end point fit line Or it could be best linear regression fit line
26
INTEGRAL NONLINEARITY ERRORS
input voltage code code Output code Output code
27
differential nonlinearity
differential nonlinearity (DNL) relates how uniform the DAC output or ADC transition voltages are. ideally, a change of 1 LSB in digital code corresponds to a change of exactly 1 LSB of analog voltage. In a DAC, a change of 1 LSB in digital code produces exactly 1 LSB change of analog output, In an ADC there should be exactly 1 LSB change of analog input to move from one transition to the next. DNL_k is the amount of deviation of the analog interval away from 1 LSB when digital code transitions from k-1 to k DNL is the maximum of all DNL_k
28
DAC Differential Nonlinearity
29
ADC Differential Nonlinearity
30
Missing code and nonmonotonicity
31
Transition uncertainty
Due to noise, jitter, aperture uncertain, the ADC’s transition points may seem to be uncertain. It effects measurements of DNL
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.