adc non linearity
play

ADC Non-linearity Wenqiang Gu Brookhaven National Laboratory 1 - PowerPoint PPT Presentation

Calibration of the ProtoDUNE ADC Non-linearity Wenqiang Gu Brookhaven National Laboratory 1 Outline ProtoDUNE TPC readout electronics ADC nonlinearity (NL) and other issues Motivation and idea of the NL calibration Validation


  1. Calibration of the ProtoDUNE ADC Non-linearity Wenqiang Gu Brookhaven National Laboratory 1

  2. Outline • ProtoDUNE TPC readout electronics • ADC nonlinearity (NL) and other issues • Motivation and idea of the NL calibration • Validation with a Monte Carlo study • Summary and working plan 2

  3. ProtoDUNE TPC readout electronics µBooNE: 14 mv/fC + 2.0 µs • Cold preamplifier • Gain: 4.7, 7.8, 14, or 25 mV/fC • Shaping time: 0.5, 1.0, 2.0, or 3.0 µs • Cold ADC (Analog to Digital Converter) • Continuous time & amplitude  discrete t & amp. • 12 bits: 4096 minimum steps in full range (1.2V) • 2 MHz sampling rate WIRE V. Radeka et al. Cold electronics for ‘Giant’ Liquid SIGNAL Argon Time Projection Chambers , 3 J. Phys. Conf. Ser. 308 (2011) 012021.

  4. Readout scheme of ADC circuit • 12 bits /channel saved in FIFO buffer • 16 channels per ADC circuit e.g. 2048 = 100,000,000,000 Least significant bits (LSB) Most significant bits (MSB) CHN15 ADC15 D0 – D11 Input Buffer FE FIFO ASIC CHN0 ADC0 D0 – D11 RST Clock READ 200MHz Internal IDXM (100MHz) Pattern P1 ADC ASIC IDXL Generator IDL 2:1 RST MUX FPGA READ 2 Global bits (CLK1:CLK0) IDXM  00 or 11 : Control signals from IDXL internal logic IDL  01: ADC control signals directly from FPGA CLK1:CLK0 4

  5. Readout scheme of ADC circuit • 16 channels split into two readout chains from FIFO CHN15 ADC15 D0 – D11 Input Buffer FE FIFO ASIC CHN0 ADC0 D0 – D11 RST Clock READ 200MHz Internal IDXM (100MHz) Pattern P1 ADC ASIC IDXL Generator IDL 2:1 RST MUX FPGA READ 2 Global bits (CLK1:CLK0) IDXM  00 or 11 : Control signals from IDXL internal logic IDL  01: ADC control signals directly from FPGA CLK1:CLK0 5

  6. Readout scheme of ADC circuit • The read/write logic must be synchronized through five control signals CHN15 ADC15 D0 – D11 Input Buffer FE FIFO ASIC CHN0 ADC0 D0 – D11 RST Clock READ 200MHz Internal IDXM (100MHz) Pattern P1 ADC ASIC IDXL Generator IDL 2:1 RST MUX FPGA READ 2 Global bits (CLK1:CLK0) IDXM  00 or 11 : Control signals from IDXL internal logic IDL  01: ADC control signals directly from FPGA CLK1:CLK0 6

  7. Readout scheme of ADC circuit • These five signals can be generated internally inside the ADC by a 200 MHz clock (2 MHz digitization) or taken externally CHN15 ADC15 D0 – D11 Input Buffer FE FIFO ASIC CHN0 ADC0 D0 – D11 RST Clock READ 200MHz Internal IDXM (100MHz) Pattern P1 ADC ASIC IDXL Generator IDL 2:1 RST MUX FPGA READ 2 Global bits (CLK1:CLK0) IDXM  00 or 11 : Control signals from IDXL internal logic IDL  01: ADC control signals directly from FPGA CLK1:CLK0 7

  8. Known issues for current ProtoDUNE ADC • Non-linearity (NL) • Stuck bits • Some bits lost randomly in a wire waveform stuck bit at 0 e.g. 101,001 ⇒ 000,000 or 111,111 noise • Can be mitigated by identifying them and interpolating the non-linearity waveform stuck bit at 63 • Low temperature degrades the electronics and read/write logics 8

  9. Known issues for current ProtoDUNE ADC • Non-linearity (NL) • Stuck bits • Some bits lost randomly in a wire waveform e.g. 101,001 ⇒ 000,000 or 111,111 • Can be mitigated by identifying them and interpolating the waveform • External clock eases both issues • NL is sensitive to clock settings 9

  10. Motivation of the NL calibration • 600e - ENC (equivalent noise charge) at ProtoDUNE • Given 14 mV/fC (preamp) and 0.3 mV/ADC conversion • 600 e - ≈ 0.1 fC ≈ 1.4 mV ≈ 4.5 ADCs • Would like to control the NL below 4 ADC for ADC true -ADC measure in the useful range By Hucheng 10

  11. Difficulty from a bench test to ProtoDUNE Also, NL is sensitive to clock settings • Bench test • (bench test) clock is tuned for each ADC CALIBRATION SIGNAL • (protoDUNE) one clock shared by (KNOWN VOLTAGE) four ADC curcuits • ProtoDUNE No direct voltage input! WIRE SIGNAL 11

  12. C. Adams et al., Ionization Electron Signal Processing in Single Phase LArTPCs II. Data/Simulation Comparison and Performance in MicroBooNE arXiv:1804.02583 Idea of the NL calibration setup Preamplifier ADC V(t) Pulser ηδ (t) 𝜊 : gain A(t) f NL : non-linearity R(t) : response • Similar setup as in MicroBooNE Caveat: cold environment also changes the response • 6 bit pulser, i.e. 64 programmable amplitudes (<1.4V) • four adjustable gains of preamplifier • R ( t ) : electronics response of preamplifier • f NL : non-linearity from ADC true to ADC measure 12

  13. Effective sampling rate • 0.5 μ s sampling (2 MHz) • shift t 0 => effectively higher sampling rate 13

  14. Direct measurement of non-linearity? A MC simulatoin ADC measure ADC true • Given a precise prediction of the preamp response  a direct measurement • However, low temperature change the response significantly 14

  15. Naïve idea of the impact from NL • Assuming pulse voltage A(t) V(t) and the preamp gain do NOT change the shape 𝜃𝐻 : 64*4 𝜃𝐻 : 64*4 of response pulse voltage … … & preamp gain • NL distorts the shape t t × 1/ 𝜃𝐻 × 1/ 𝜃𝐻 differently for high ADC A(t) V(t) and low ADC with NL w/o NL 15 t t

  16. Sanity check with a MC simulation w/o NL ADC measure ADC true All waveforms match perfectly × 1/ 𝜃𝐻 with NL Input NL in MC 16

  17. Calibration strategy • By assuming a function of non-linearity NL varies among channels • a piecewise function • or a polynomial function • Minimize the variance in A(t)/ 𝜃 G • i.e. the effective response function • ~O(10k) data points & ~O(10) unknowns  should be a solvable problem • A channel by channel calibration plan 17

  18. Proof of principle with MC simulation Amp input Pluse input Amp output saturation C (~185fF) saturation Δ V pin62 CSA V DAC : 0 ~ 1.2V Chn_N 63 steps SHAPER Preamp output voltage Gain: 4.7, 7.8, 14, 25 mV/fC ADC measure 9900 points ADC measure / (V DAC × G amp ) 10 MHz effective sample rate ADC true Pulse voltage • By ignoring some saturations in preamp, a 10k data set is possible 18

  19. ADC measure ( 𝐵 𝑗 , 𝐻 𝑗 , 𝑢 𝑙 ) 𝜓 2 minimization 𝐻 𝑗 = pulse voltage × preamp gain (A normalization of charge input) index of the 𝛽 -th iteration 2 𝜓 2(𝛽) = ෍ 𝐵 𝑗 + 𝑔 𝛽 𝐵 𝑗 − 𝑆 𝛽−1 𝑢 𝑙 𝐻 𝑗 𝑗 Time tick for 𝐵 𝑗 𝑂 σ 𝐵 𝑗 +𝑔 (𝛽−1) (𝐵 𝑗 ) 1 𝑆 𝛽−1 (𝑢 𝑙 ) = is the 𝐻 𝑗 i -th data point effective response function NL correction function (Calculated with the NL function from best fit of previous iteration) (To be fitted out) 19

  20. χ 2 minimization (cont ’) 𝑧 0 + 𝑧 1 − 𝑧 0 𝐵 𝑗 − 0 , 𝐵 𝑗 ∈ [0,1000) 1000 𝑧 1 + 𝑧 2 − 𝑧 1 𝐵 𝑗 − 1000 , 𝐵 𝑗 ∈ [1000,2000) 1000 For a piecewise function, 𝑔 𝐵 𝑗 = 𝑧 2 + 𝑧 3 − 𝑧 2 𝐵 𝑗 − 2000 , 𝐵 𝑗 ∈ [2000,3000) the coefficients are calculated 1000 𝑧 3 + 𝑧 4 − 𝑧 3 before the minimization 𝐵 𝑗 − 3000 , 𝐵 𝑗 ∈ [3000,4000) 1000 𝑔(𝐵 𝑗 ) = 𝑐 0 𝑧 0 + 𝑐 1 𝑧 1 + 𝑐 2 𝑧 2 + 𝑐 3 𝑧 3 + 𝑐 4 𝑧 4 y 5 y 3 y 4 y 1 y 2 𝐵 𝑗 𝐵 𝑗 b others = 0 𝑐 0 = 1 − 1000 , 𝑐 1 = 1000 , 𝐵 𝑗 ∈ [0,1000) 𝑐 1 = 1 − 𝐵 𝑗 −1000 1000 , 𝑐 2 = 𝐵 𝑗 −1000 1000 , 𝐵 𝑗 ∈ [1000,2000) 0 1000 3000 2000 4000 𝐵 𝑗 = 𝑐 2 = 1 − 𝐵 𝑗 −2000 1000 , 𝑐 3 = 𝐵 𝑗 −2000 1000 , 𝐵 𝑗 ∈ [2000,3000) 𝑐 3 = 1 − 𝐵 𝑗 −3000 1000 , 𝑐 4 = 𝐵 𝑗 −3000 1000 , 𝐵 𝑗 ∈ [3000,4000) 20

  21. χ 2 minimization (cont ’) • Given 𝑔 𝐵 𝑗 from last iteration ( 𝛽 -1 th) or initial guess (0-th), an effective response function 𝑆(𝑢 𝑙 ) is obtained e.g., 𝑔 𝐵 𝑗 = 𝑐 0 𝑧 0 + 𝑐1𝑧 1 + ⋯ + 𝑐 4 𝑧 4 (five points)  𝜓 2 = σ 𝐵 𝑗 + 𝑐 0 𝑧 0 + ⋯ + 𝑐 4 𝑧 4 − 𝑆(𝑢 𝑙 )𝐻 𝑗 2 2 𝑧 0 𝑗 𝑗 𝑗 𝑗 𝑗 𝐵 𝑗 −𝑆𝐻 𝑗 −𝑐 0 −𝑐 1 −𝑐 2 −𝑐 3 −𝑐 4 = 𝑁 − 𝑆 ⋅ 𝑇 2 𝑧 1 = 𝐵 𝑛 −𝑆𝐻 𝑛 − … … … … … … 𝑧 2 𝑧 3 𝑧 4 ⇒ By minimizing 𝜓 2 , { 𝑧 0 , 𝑧 1 , 𝑧 2 , 𝑧 3 , 𝑧 4 } ≡ 𝑇 = 𝑆 𝑈 𝑆 −1 𝑆 𝑈 𝑁 ⇒ Iterate the minimization until 𝑔 𝐵 𝑗 converges 21

  22. Evolution of the “best - fit” 𝑔(𝐵 𝑗 ) and 𝑆(𝑢) • Given initial value { 𝑧 𝑗 } = {0, 0, 0, 0, 0} • After several times of iterations, “best - fit” NL 𝑔(𝐵 𝑗 ) and effective response 𝑆(𝑢) tends to be stable • The spread in 𝑆(𝑢) significantly shrinks after minimization ADC true – ADC measure Iter. #1 𝑆(𝑢) Iter. #2 NL bias? Electronics True response Initial bias ≈ 9 True ADC measure 22

  23. For initial values { 𝑧 𝑗 } = { 𝑧 true } • Not surprising. Ture 𝑔(𝐵 𝑗 ) and 𝑆(𝑢) are obtained given the initial values close to the true values 𝜓 2 = 5E-5 (iter# 5) 23

  24. For initial values { 𝑧 𝑗 } = {-10, -10,-10,-10,-10} • The spread in 𝑆 𝑢 𝑙 is barely seen after iterations of 𝜓 2 minimization • Smaller biases in both 𝑔 𝐵 𝑗 and 𝑆(𝑢 𝑙 ) than { 𝑧 𝑗 } ={0, 0, 0, 0, 0} • Will the bias be a problem? (next slide) Δ =3.5 𝜓 2 = 0.0016 (iter# 5) Initial 24

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend