Presentation is loading. Please wait.

Presentation is loading. Please wait.

EE121 John Wakerly Lecture #13

Similar presentations


Presentation on theme: "EE121 John Wakerly Lecture #13"— Presentation transcript:

1 EE121 John Wakerly Lecture #13
Digital-to-analog conversion Analog-to-digital conversion

2 Digital-to-analog conversion
Vout = k (x020 + x020 + x020 + … + xn-12n-1) / 2n reference voltage in “multiplying” DAC k / 2n = “step size”

3 Weighted resistor network
CMOS transmission gates

4 Norton equivalent Equivalent resistance found by setting voltage sources to zero. Current source found by setting RLOAD to zero.

5 Thevenin equivalent

6 Weighted-resistor network problems
Resistor values span a wide range n-bit DAC ==> resistors from 2R to 2nR 8-bit DAC ==> 2R to 512R, e.g., 2K to 512K Difficult to fabricate wide ranges of resistance in semiconductor processes. Different resistors in the network have different accuracy requirements. 5% resistance change at MSB has 2.5% effect 5% resistance change at LSB (8-bit) has .02% effect MSB of 16-bit DAC (as in CD player) would require accuracy of one part in 215 (.003%) to have less than one step-size error.

7 Solution: Ladder Network
Same Norton and Thevenin equivalents Uses only two resistor values, R and 2R Easy to control resistance ratios on-chip

8 Why is it the same? and so on...

9 Analog-to-digital conversion
Analog comparator = 1-bit A-to-D

10 Combinational A-to-D Fastest conversion time
used in digital scopes, video sampling, etc. Good for only a few bits of resolution

11 Sequential A-to-D Idea: Use one comparator, repetitively, and a DAC to try different digital values until correct result is found. “COMP” (logic signal) RESULT

12 Counter-ramp A-to-D Initialize result register to 0
Keep incrementing result register until the DAC produces a votage greater than Vin. Maximum of 2n steps for n-bit conversion. ABEL code: state IDLE: if START then LOOK with result := 0; else IDLE with result := result; state LOOK: if (COMP == 1) then DONE with result := result; else if (result == MAX) then DONE with result := result; else LOOK with result := result + 1; state DONE: if START then DONE with result := result;

13 Successive-approximation A-to-D
Like a binary search in software -- n steps to search 2n possible results (n-bit result). First step -- determine MSB of result: Set result to 100…00. Is COMP 1 or 0? COMP=1 ==> MSB = 1; else MSB = 0. Second step -- determine next lower bit: Set result to x10…00. Is COMP 1 or 0? (x = bit found at previous step). COMP=1 ==> next lower bit =1; else 0. And so on, for n steps through the LSB Lab assignment -- create state machine and result register for this algorithm in ABEL.

14 Apple ][ A-to-D converter
Converts analog position into numeric value. Idea: Use a potentiometer whose resistance is a function of position (e.g., on a joystick). Combine the resistance with a capacitance and measure the RC time constant use a program loop.

15

16 Next Time Read-only memories (review) Read-write memories SRAMs DRAMs


Download ppt "EE121 John Wakerly Lecture #13"

Similar presentations


Ads by Google