Interface Electronics10/11 ADC PipelineProf. Dr. Jörg Vollrath09 ADC Architectures Flash and SAR |
Länge: |
0:0:10 Switched capcitor circuit 0:2:14 Pipeline ADC 0:3:12 3-bit Pipeline folding ADC 0:5:13 Residue transfer curve 0:8:30 Gray code 0:10:20 Benefits of pipeline ADC 0:15:40 Sample and hold circuits 0:17:4 Folding circuit 0:19:55 Regular pipeline ADC Example 2-bit per stage, 4-bit 0:21:55 Residue, transfer curve 0:26:0 Adding DAC and input voltage 0:29:40 Gain of 3 0:37:11 Transfer table 0:47:10 Circuit 0:48:2 Simulated curve 0:48:0 LTSPICE simulation with gain error 0:52:32 Staying inside the box 0:56:14 Input and residue signals 0:58:57 Simulation and calibration 1:4:33 ADC Error Simulation with pipeline ADC 1:6:48 Lower gain 1.8 1:11:27 Folding pipeline ADC 1:23:19 Simulation and calibration 1:16:54 1.5 Bits per stage 1:18:40 Scalable cyclic pipeline ADC 1:22:0 sample and hold to prevent frequency doubling |
Code b3b2b1b0 | Nr | Vinmin(Gain=4) [Vref] |
0000 | 0 | --- |
0001 | 1 | 0 + 0.0625 |
0010 | 2 | 0 + 0.125 |
0011 | 3 | 0 + 0.1875 |
0100 | 4 | 0.25 |
0101 | 5 | 0.25 + 0.0625 |
0110 | 6 | 0.25 + 0.125 |
0111 | 7 | 0.25 + 0.1875 |
1000 | 8 | 0.5 |
1001 | 9 | 0.5 + 0.0625 |
1010 | 10 | 0.5 + 0.125 |
1011 | 11 | 0.5 + 0.1875 |
1100 | 12 | 0.75 |
1101 | 13 | 0.75 + 0.0625 |
1110 | 14 | 0.75 + 0.125 |
1111 | 15 | 0.75 + 0.1875 |
Version 4 SHEET 1 880 680 WIRE 304 32 288 32 WIRE 416 32 384 32 WIRE 624 32 496 32 WIRE 144 48 144 32 WIRE 144 48 -32 48 WIRE 560 64 560 16 WIRE 416 80 416 32 WIRE 528 80 416 80 WIRE 144 96 144 48 WIRE 624 96 624 32 WIRE 624 96 592 96 WIRE 656 96 624 96 WIRE -272 112 -272 96 WIRE -144 112 -144 96 WIRE 112 112 16 112 WIRE 368 112 304 112 WIRE 480 112 448 112 WIRE 528 112 480 112 WIRE 16 128 16 112 WIRE 16 128 -32 128 WIRE 240 128 240 32 WIRE 240 128 176 128 WIRE 256 128 240 128 WIRE 480 128 480 112 WIRE -32 144 -32 128 WIRE 112 144 80 144 WIRE 256 144 256 128 WIRE 80 192 80 144 WIRE 304 192 304 112 WIRE 304 192 80 192 WIRE 560 192 560 128 WIRE 144 224 144 160 WIRE 144 224 -32 224 WIRE 288 224 288 32 WIRE 288 224 256 224 WIRE 480 224 480 208 WIRE 256 240 256 224 WIRE 144 256 144 224 WIRE -272 304 -272 288 WIRE 256 336 256 320 FLAG 144 32 VDDp FLAG 144 256 VDDn FLAG 80 144 In IOPIN 80 144 In FLAG 656 96 Vout IOPIN 656 96 Out FLAG 560 192 VDDn FLAG 560 16 VDDp FLAG 480 224 0 FLAG 256 336 0 FLAG 240 32 Dout IOPIN 240 32 Out FLAG -144 112 0 FLAG -272 112 0 FLAG -272 16 VDDp FLAG -144 16 VDDn FLAG -272 304 0 FLAG -272 208 IN SYMBOL res -48 32 R0 SYMATTR InstName R1 SYMATTR Value 10k SYMBOL res -48 128 R0 SYMATTR InstName R2 SYMATTR Value 10k SYMBOL res 464 112 R0 SYMATTR InstName R3 SYMATTR Value 200k SYMBOL res 464 96 R90 WINDOW 0 0 56 VBottom 2 WINDOW 3 32 56 VTop 2 SYMATTR InstName R4 SYMATTR Value 100k SYMBOL res 512 16 R90 WINDOW 0 0 56 VBottom 2 WINDOW 3 32 56 VTop 2 SYMATTR InstName R5 SYMATTR Value 200k SYMBOL res 400 16 R90 WINDOW 0 0 56 VBottom 2 WINDOW 3 32 56 VTop 2 SYMATTR InstName R6 SYMATTR Value 100k SYMBOL res 240 224 R0 SYMATTR InstName R7 SYMATTR Value 100 SYMBOL res 240 128 R0 SYMATTR InstName R8 SYMATTR Value 100 SYMBOL voltage -272 0 R0 SYMATTR InstName V1 SYMATTR Value 4.5 SYMBOL voltage -144 0 R0 SYMATTR InstName V2 SYMATTR Value -3 SYMBOL voltage -272 192 R0 WINDOW 123 0 0 Left 2 WINDOW 39 0 0 Left 2 SYMATTR InstName V3 SYMATTR Value SINE(0 5 1k) SYMBOL Opamp3 144 128 R0 WINDOW 0 8 -72 Bottom 2 SYMATTR InstName X3 SYMATTR SpiceLine Aol=100000 GBW=0.01G SYMBOL Opamp3 560 96 R0 WINDOW 0 8 -72 Bottom 2 SYMATTR InstName X1 SYMATTR SpiceLine Aol=100000 GBW=0.01G TEXT -296 352 Left 2 !.dc V3 -4.5 4.5 0.02 TEXT -304 -96 Left 2 !.global VDDp VDDn
Comparison of ideal case and gain error. (Picture on the right) Comparison of ideal case and offset error. Discussion: Clipping of output (red circles) limits the resolution of the ADC. (R7=150 Ω) There is a dead zone at the center of the curve. No code change will happen in the dead zone defining and limiting LSB. Reduction of output reduces the input range.(R7=70 Ω) Offset error (RE=1000kΩ) will give missing codes. (Next slide) PipeStage5Bit.asc |
![]() ![]() ![]() |
ADC Simulation 4 bit pipeline ADC Gain Error 2.1 Gain Error 1.9 Typical output codes: Missing output codes: gain low and has margin. Changing slope of transfer characteristic: amplifier non linear Calibration: Condense codes and use lowest slope. FFT and ADC Calibration |
![]() |
Folding function:![]() |
Transfer function:![]() |
FFT:![]() |
ENOB: (16.08 dB - 1.76 dB)/6.02 dB = 2.38 Calibration: ENOB: (16.5 dB - 1.76 dB)/6.02 dB = 2.44 |
Calibration:![]() |
FFT:![]() |
There are 3 codes possible: 00,01,11 ld(3) = 1.58 bits |
![]() |
Version 4 SHEET 1 1368 680 WIRE 96 304 64 304 WIRE 64 320 64 304 WIRE 624 336 80 336 WIRE 352 352 320 352 WIRE 352 384 352 352 WIRE 208 400 176 400 WIRE 304 400 272 400 WIRE 336 400 304 400 WIRE 416 400 368 400 WIRE 528 400 416 400 WIRE 32 416 0 416 WIRE 416 416 416 400 WIRE 624 416 624 336 WIRE 624 416 592 416 WIRE 32 432 32 416 WIRE 528 432 512 432 WIRE 16 448 -16 448 WIRE 48 448 48 336 WIRE 96 448 48 448 WIRE 112 448 96 448 WIRE 176 448 176 400 WIRE 176 448 112 448 WIRE 96 464 96 448 WIRE 416 496 416 480 WIRE 512 496 512 432 WIRE 624 496 512 496 WIRE 624 512 624 496 WIRE 176 528 176 448 WIRE 256 528 176 528 WIRE 96 544 96 528 WIRE 368 544 320 544 WIRE 624 608 624 592 FLAG 368 544 Ds0 IOPIN 368 544 Out FLAG -16 448 A IOPIN -16 448 In FLAG 96 544 0 FLAG 0 416 CLK1 FLAG 304 400 res0 FLAG 112 448 sample0 FLAG 416 496 0 FLAG 320 352 CLK2 FLAG 416 400 sample1 FLAG 96 304 CLK3 FLAG 624 608 0 SYMBOL SampleHold 32 448 R0 SYMATTR InstName X1 SYMBOL cap 80 464 R0 WINDOW 0 22 8 Left 2 SYMATTR InstName C1 SYMATTR Value 4.7p SYMBOL Comparator 288 528 R0 SYMATTR InstName X2 SYMBOL Folder 240 400 R0 SYMATTR InstName X3 SYMBOL SampleHold 352 400 R0 SYMATTR InstName X4 SYMBOL cap 400 416 R0 SYMATTR InstName C2 SYMATTR Value 4.7p SYMBOL SampleHold 64 336 M0 SYMATTR InstName X5 SYMBOL res 608 400 R0 SYMATTR InstName R1 SYMATTR Value 100k SYMBOL res 608 496 R0 SYMATTR InstName R2 SYMATTR Value 100k SYMBOL Opamp1 560 416 R0 SYMATTR InstName X6 TEXT 704 232 Left 2 !.include cmosedu_models.txt\n.global vdd\nV1 Ax 0 SINE(0.466 0.06 0.0005G) AC 1\nVDD VDD 0 DC 1\nVA A 0 PULSE(0.35 0.6 0 10u 10u 0 20u)\n*VA A 0 PULSE(0.35 0.585 0 1000u 1000u 0 2000u)\nVCLK1 CLK1 0 DC 0\nVCLK2 CLK2 0 DC 0\nVCLK3 CLK3 0 DC 1\n*VCLK1 Clk1 0 PULSE(1 0 0 0.1n 0.1n 19.9n 800n)\n*VCLK2 CLK2 0 PULSE(1 0 25n 0.1n 0.1n 19.9n 80n)\n*VCLK3 CLK3 0 PULSE(1 0 50n 0.1n 0.1n 19.9n 80n)\n.tran 0 40u 0 0.1n\n* .dc VA 0 1 0.0001\n* .noise v(Y) VA dec 10 10 10G
Version 4 SymbolType BLOCK LINE Normal -32 32 -32 -31 LINE Normal 32 0 -32 32 LINE Normal -33 -32 32 0 LINE Normal -11 -16 -25 -16 LINE Normal -19 -10 -19 -21 LINE Normal -9 16 -23 16 WINDOW 0 19 -19 Bottom 2 PIN -32 16 NONE 8 PINATTR PinName M PINATTR SpiceOrder 1 PIN -32 -16 NONE 8 PINATTR PinName P PINATTR SpiceOrder 2 PIN 0 32 NONE 8 PINATTR PinName VN PINATTR SpiceOrder 3 PIN 0 -32 NONE 8 PINATTR PinName VP PINATTR SpiceOrder 4 PIN 32 0 NONE 8 PINATTR PinName Y PINATTR SpiceOrder 5
Version 4 SymbolType BLOCK LINE Normal -31 47 -31 -16 LINE Normal 33 16 -31 47 LINE Normal -31 -16 33 16 LINE Normal -18 5 -18 -4 LINE Normal -23 0 -13 0 LINE Normal -12 32 -22 32 TEXT -99 32 Left 0 Vdd/2 WINDOW 0 0 -24 Bottom 0 PIN -32 0 NONE 8 PINATTR PinName a PINATTR SpiceOrder 1 PIN 32 16 NONE 8 PINATTR PinName D PINATTR SpiceOrder 2
Version 4 SymbolType BLOCK LINE Normal 0 -12 -15 15 LINE Normal 15 15 0 -12 RECTANGLE Normal -32 -24 32 24 WINDOW 0 0 -24 Bottom 0 PIN -32 0 NONE 8 PINATTR PinName a PINATTR SpiceOrder 1 PIN 32 0 NONE 8 PINATTR PinName Y PINATTR SpiceOrder 2
Version 4 SymbolType BLOCK LINE Normal -7 0 -16 0 LINE Normal 7 0 16 0 LINE Normal -7 -8 7 0 LINE Normal 0 -4 0 -16 PIN 0 -16 NONE 8 PINATTR PinName CLK PINATTR SpiceOrder 1 PIN -16 0 NONE 8 PINATTR PinName A PINATTR SpiceOrder 2 PIN 16 0 NONE 8 PINATTR PinName B PINATTR SpiceOrder 3
Version 4 SymbolType BLOCK LINE Normal -32 32 -32 -31 LINE Normal 32 0 -32 32 LINE Normal -33 -32 32 0 LINE Normal -11 -16 -25 -16 LINE Normal -19 -10 -19 -21 LINE Normal -9 16 -23 16 WINDOW 0 0 -40 Bottom 2 PIN -32 16 NONE 8 PINATTR PinName M PINATTR SpiceOrder 1 PIN -32 -16 NONE 8 PINATTR PinName P PINATTR SpiceOrder 2 PIN 32 0 NONE 8 PINATTR PinName Y PINATTR SpiceOrder 3