Signal Processing for High Energy Physics Detectors Luciano Musa - CERN / EP Workshop on Advanced Instrumentation for Future Accelerator Experiments Bergen, 3-6 April 2005 06 April 2005 Luciano Musa 1 Signal Processing in High Energy Physics Introduction Signal Processing is a way of converting an obscure signal into useful information Signal processing includes signal formation due to a particle passage within a detector, signal amplification, signal shaping (filtering) and readout The basic goal is to extract the desired and pertinent information from the obscuring factors (e.g. noise, pile-up) The two quantities of greatest importance to be extracted from detector signals are: • amplitude: energy, nature of the particle, localization • time of occurrence: localization 06 April 2005 Luciano Musa 2 Signal Processing in High Energy Physics Means of Detection Each detection method has to extract some energy from the particle to be detected Nearly all detection methods (Cerenkov and Transition Radiation Detector being an exception) make use of ionization or excitation Charged particles: ionization and excitation is produced directly by the interaction of the particle electromagnetic field with the electrons of the detection medium A typical particle energy (today’s experiments) is of the order of few GeV, while the energy loss can be below the MeV level. This is an example of a nondestructive method for detection of charged particles. All neutral particles must first undergo some process that transfers all or part of their energy to charged particles. The detection method is destructive 06 April 2005 Luciano Musa 3 Signal Processing in High Energy Physics Detection of Ionization (1/2) In most ionization detectors the total ionization is collected using an externally applied electrical field Sometimes an amplification process by avalanche formation in a high electrical field is used. Examples of detectors are: a) Proportional chamber; b) Liquid-argon chamber; c) Semiconductor detector. All of them provide a certain amount of charge onto an output electrode The electrode represents a certain capacitance For signal-processing point of view these detectors are capacitive sources, i.e. their output impedance is dominated by the capacitance 06 April 2005 Luciano Musa 4 Signal Processing in High Energy Physics Detection of Ionization (2/2) This common feature of all detectors for particle physics allows a rather unified approach to signal processing Despite of common features among various detectors used in high-energy physics, great differences exist among them • The typical charge at the detector output can differ by six orders of magnitude • The output capacitances can differ by the same factor • Signal dynamics • Time available for the measurement 06 April 2005 Luciano Musa 5 Signal Induced by a Moving Charge Example I Parallel Plate Ion Chamber QA,el = -q Anode (A) E d i QA,ion = q Vb x x = -q V’A d V’A(P) x V’A =q Applaying Green’s Theorem d A constant induced current flows in the external circuit Cathode (C) i= 06 April 2005 V’A(P) Luciano Musa dQA,el dt =- q dx d dt 6 Signal Induced by a Moving Charge Cylindrical Proportional Chamber Example II Avalanche region (amplification) Charged particle primary ionization cathode gas anode electron – ion pair Electron cloude E≠0 Ion cloude i(t) = i0 / (1+t/t0) 06 April 2005 Luciano Musa 7 Detector Signal Processing Model series series white noise 1/f noise e2W=a e2f=c/|f| noiseless preamplifier signal A processor Q · s(t) Cd i2W=b i2f=d·f parallel parallel white noise f noise Ci If s(t) = d(t) A(Q/(Cd+Ci)) noise power spectral density Ax[a+b/w(Cd+Ci)2] The detector is modeled as a current source, delivering in a current pulse with time profile s(t) and charge Q, proportional to the energy released, across the parallel combination of the detector capacitance Cd and the preamplifier input capacitance Ci. 06 April 2005 Luciano Musa 8 Electronic Signal Processing F(f) U(f) h(f) F(f) U(f) f Noise floor f0 f0 f0 f f Improved Signal/Noise Ratio Example of signal filtering - the figure shows a “typical” case of noise filtering In particle physics, the detector signals have very often a very large frequency spectrum The filter (shaper) provides a limitation in bandwidth, and the output signal shape is different with respect to the input signal shape. 06 April 2005 Luciano Musa 9 Electronic Signal Processing F(f) U(f) h(f) F(f) U(f) f Noise floor f0 f0 f f Improved Signal/Noise Ratio The output signal shape is determined, for each application, by the following parameters: • Input signal shape (characteristic of detector) • Filter (amplifier-shaper) characteristic The output signal shape is chosen such to satisfy the application requirements: • Time measurement • Amplitude measurement • Pile-up reduction • Optimized Signal-to-noise ratio 06 April 2005 Luciano Musa 10 Electronic Signal Processing f0 06 April 2005 f Filter cuts noise. Signal BW is preserved Luciano Musa 11 Signal Processing f0 06 April 2005 f Filter cuts inside signal BW : modified shape Luciano Musa 12 Signal Processing for Charge Measurement OPTIMUM PROCESSOR signal A noiseless f(t) processor T(s) i(t) Cd+Ci n(w) System Transfer function AT(s) / (s (Cd+Ci)) System Impulse response function vs(t) = ʆ-1AT(s) / (s (Cd+Ci)) Output root mean square noise [vN2]1/2 Optimum Processor maximize r = {Q A/(Cd+Ci) MAX ʆ-1(I(s) T(s) / s) } / [vN2]1/2 06 April 2005 Luciano Musa 13 Real-time Digital Filters Filters A filtering device is a signal processor, capable of signal discrimination on the basis of either frequency-domain or time-domain characteristics. Continuous-time (analogue) filters predominant in the past Passive: R–L-C Active: Operational Amplifiers + R-L-C or R-C feedback Nowadays discrete-time (sampled) filters, analogue (switched-capacitors) and digital, have replaced the analogue filters in most applications: communication, radar, seismic, biomedical, etc. exceptions are the ultra-low power and high-speed applications A sampled signal unitized in amplitude becomes a sequence of numbers (digits): digital filter As the IC scale integration progresses the employment of digital filters increases 06 April 2005 Luciano Musa 14 Real-time Digital Filters Analogue vs. Digital Filters Advantages of Digital Filters Finite-duration impulse responses are achievable Time-varying filters (even self-adaptive) are realized without any special component by simply programming a different set of numbers in the filter Certain realization problems, such as negative element values, and practical problems, such as inconveniently large components at low frequencies, do not arise Programmability Greater accuracy is achieved No sensitive to environmental conditions (e.g. temperature, supply voltages, etc.) Disadvantages of Digital Filters Power Limited by A/D speed and resolution 06 April 2005 Luciano Musa 15 Real-time Digital Filters Why Analogue circuits? “Real-World” signals are analogue Analogue Signal Processing (ASP) has certain specific advantages, e.g. low-power, no A/D conversion,speed Mixed-mode Signal Processing (i.e. combining ASP with DSP on a VLSI chip has become technologically possible, and is gaining in popularity) Switched-Capacitor (SC) circuits (sampled-data, or discrete-time analogue circuits) have largely proved themselves in VLSI technology What about HEP? Filtering is almost exclusively based on continuous-time signals Analogue filters based on “classical” architectures Marginal use of discrete-time filters, both analogue and digital 06 April 2005 Luciano Musa 16 Analogue to Digital Converter Example - 4 bits A/D Converter D0 analog input Analog ADC 4-bit Input D1 D2 0100 1 0111… 1 Digital Output D3 t Output Code Full scale amplitude 1111 LSB=Full scale/2N 62.5 mV for 1V/4bits Sampling Clock reconstructed signal t 16 possible output codes 06 April 2005 1 1 Luciano Musa 0000 17 Analogue to Digital Converter Time and Amplitude Resolution Limiting Factors in the Time and Amplitude resolution • Time: Aperture time and Clock Jitter • Amplitude: Noise floor signal jitter clock 06 April 2005 Luciano Musa 18 Analogue to Digital Converter Accuracy – Speed ENOB 22 20 18 16 14 12 10 8 6 4 2 0 10K 06 April 2005 Heisenberg 1Kohm thermal 1ps jitter Sampling Sample/s 100K 1M 10M 100M Luciano Musa 1G 10G 100G 19 The Uniform Sampling Theorem The Uniform Sampling Theorem Introduced by Shannon in 1948 (original idea by Nyquist in 1928) It establishes the theoretical maximum sampling interval for complete signal reconstruction The theorem holds (rigorously) only for physically unrealizable bandlimited signals Band-limited signals are a good approximation of many signal encountered in practice 06 April 2005 Luciano Musa 20 The Uniform Sampling Theorem Fourier Spectrum of a band-limited function f(t) F(ω) = f t |F(w)| p(w) (low pass filter) wc wc 0 F(ω) = 0 ω ωc ωc = 2 πf c w Theorem f(t) is uniquely determined by its values at uniform time intervals that are 1/2fc seconds apart fn = f 06 April 2005 n 2f c =f nπ ω c Cardinal function sin ωc t nπ f (t ) = fn ωc t nπ n = n = Luciano Musa Nyquist frequency 2fc 21 Difference Equation Key element of a sampled-data system ANALOG antialias WORLD filter S&H A&D input samples f(nT) DSP reconstr. D/A Readout & Recording filter DIGITAL FILTER ANALOG WORLD output samples u(nT) Difference Equation The operation of the filter is described by a difference equation that relates u(nT) as a function of the present input sample f(nT) and any number of past input and output samples Recursion formula 06 April 2005 u nT = q m L f nT iT K u nT iT i=0 i i =1 i Luciano Musa 22 Difference Equation Example of a Difference Equation Computation First-order difference equation (m=1, q=3) u(nT) = 3f(nT) – 2f(nT – T) + 6f(nT - 2T) + 2f(nT – 3T) – u(nT-T) fs(t) us(t) 5 50 4 40 Input function 3 30 2 20 1 10 Ouput function … 1 0 1 2 3 4 t/T 0 3 2 5 4 7 6 t/T -10 -20 06 April 2005 Luciano Musa 23 Difference Equation The recursiveness of the Difference Equation suggest for its implementation: a) program a General Purpose Computer b) program a Digital Signal Processor c) Hardwired Digital Filter Digital Filter Simulation of a First-Order Difference Equation Recursion formula u nT = K u nT T L f(nT) 1 0 u(nT) f(nT) L0 + + Adder L0 Multiplier T Delay (Register) T K1 06 April 2005 Luciano Musa 24 The z-Transform Continuous-Time The Laplace transform reduces constant-coefficient linear Domain differential equations to linear algebraic equations Discrete-Time The z-transform reduces constant-coefficient linear Domain difference equations to linear algebraic equations Four tools for the analysis, synthesis, and understanding of linear timeinvariant electronic systems, either continuous or discrete time: • Fourier transform • Laplace transform • Hilbert transform • z-transform 06 April 2005 Luciano Musa 25 The z-Transform The ideal sampler circuit f(t) F(s) fs(t) Fs(s) T f(t) is a real-life causal signal f(t) = 0 for t < 0 fs(t) f(t) We consider f(t) as modulating d(t) d(t) is a train of periodic impulse functions of area T ... 0 T 2T 3T 4T 5T t f s (t) = f(t) d(t) = T f nT δ t nT n=0 06 April 2005 Luciano Musa 26 The z-Transform The sampling process regarded as a modulation process f s (t) = f(t) d(t) = T f nT δ t nT n=0 LAPLACE TRANSFORM nTs Fs (s) = f nT e n=0 Unfortunately Fs(s) contains exponentials, hence is not algebraic in s. Z-transform z= esT 06 April 2005 or s= 1 lnz T Zf s (t ) = F(z) = f nT z n n=0 Luciano Musa 27 Mapping the s-Plane into the z-Plane z= esT Im s = σ jω Im z = e jωT jw s-plane z-plane s 0 0 Re Sampled time functions that exponentially 1 Re Oscillating sampled time functions decrease with increasing time Sampled time functions that exponentially Z=1, constant or increasing functions increase with increasing time depending on the multiplicity of the pole 06 April 2005 Luciano Musa 28 Frequency-Domain Characteristics 1 Fs (s) = F(s jnωs ) T n=0 |F(jw)| Function not band-limited 0 w EFFECT OF SAMPLING |Fs(jw)| ws 06 April 2005 0 Luciano Musa Aliasing or Foldover ws w 29 The z-Transform |F(jw)| Band-limited function wc ws 2wc wc w wc ws |Fs(jw)| 2ws ws wc 0 2ws w |Fs(jw)| ws< 2wc 3ws 06 April 2005 0 2ws ws wc 0 wc Luciano Musa ws 2ws 3ws w 30 Digital Networks Digital filter network values are easily obtained, often by inspection q Lz i U(z) i = 0 i H(z)= = i F(z) 1 m Kz i i= 1 q m u(nT) = L f(nT iT) Ku(nT iT) i i i= 0 i= 1 Difference equation Canonic Form System Function Feed-forward path L0 L1 L2 Lq fs(t) + Z-1 Z-1 Z-1 Z-1 + us(t) -K1 m delays -K2 -Kq -Km Feed-back path 06 April 2005 Luciano Musa 31 Digital Networks Digital filter network values are easily obtained, often by inspection q Lz i U(z) i = 0 i H(z)= = i F(z) 1 m Kz i i= 1 q m u(nT) = L f(nT iT) Ku(nT iT) i i i= 0 i= 1 Difference equation System Function If all Ki’s are 0 Non-recursive L0 L1 L2 fs(t) + Z-1 Z-1 Z-1 Lq + us(t) q delays 06 April 2005 Luciano Musa 32 An example of Ionization Detector - Time Projection Chamber TPC Working Principle GAS VOLUME 88 m3 E E DRIFT GAS 90% Ne - 10%CO2 400 V / cm 88ms 06 April 2005 Luciano Musa 33 An example of Ionization Detector - Time Projection Chamber TPC WORKING PRINCIPLE 06 April 2005 Luciano Musa 34 How to Measure in a High Track Density? Aliroot: Montecarlo with microscopic TPC simulation 1000 cluster peaks montecarlo data 900 800 700 600 Pad Row: 9 Nr samples after zero suppression: 310 Nr clusters: 76 Mean time between clusters: 1.2 ms 500 400 Physics of the Aliroot Monte Carlo 300 Ionization in gas Generation of secondary electrons 200 Diffusion of electrons Electron attachment 100 E x B effect near the anode wires Avalanche of the anode wire 0 0 100 200 300 400 Charge induced 500 600 on700 pads and pad response function Shaping and sampling time signal 06 April 2005 Luciano Musa 35 The Ion–Tail Problem Test of Inner Readout Chamber with final FEE in Field Cage prototype Ionization from 83Kr Decay Ion tail 06 April 2005 Luciano Musa 36 The Ion–Tail Problem Aliroot: Montecarlo with microscopic TPC simulation Aliroot data convoluted measured signal Montecarlo data through with NA49-FTPC amplifier 1000 1000 cluster peaks cluster peaks montecarlo NA49-FTPC amplifierdata response 900 900 800 800 700 700 600 600 Pad Row: 9 Nr samples after zero suppression: 310 Nr clusters: 76 Mean time between clusters: 1.2 ms 500 500 400 400 300 300 200 200 100 100 00 00 06 April 2005 100 100 200 200 300 300 400 400 Luciano Musa 500 500 600 600 700 700 37 The Ion–Tail Problem Aliroot data convoluted measured signal Montecarlo data through with NA49-FTPC amplifier 200 cluster peaks NA49-FTPC amplifier response 150 100 50 0 Signal corresponding to 1 MIP -50 06 April 2005 0 100 200 300 400 Luciano Musa 500 600 700 38 TPC FEE OVERVIEW Front End Card (128 CHANNELS) DETECTOR L2: < 100 ms 200 Hz L1: 6.5ms 1 KHz drift region 88ms Capton cable power consumption < 40 mW / channel Custom Backplane 8 CHIPS (16 CH / CHIP) 8 CHIPS (16 CH / CHIP) gating grid ALTRO PASA anode wire 570132 PADS pad plane 1 MIP = 4.8 fC S/N = 30 : 1 DYNAMIC = 30 MIP 06 April 2005 CUSTOM IC (CMOS 0.35mm) CSA SEMI-GAUSS. SHAPER GAIN = 12 mV / fC FWHM = 190 ns Digital Circuit ADC CUSTOM IC (CMOS 0.25mm ) RAM RCU (3200 CH / RCU) • LINEARIZATION 10 BIT < 12 MHz • BASELINE CORR. • TAIL CANCELL. MULTI-EVENT MEMORY • ZERO SUPPR. Luciano Musa 39 Pre-Amplifier Shaping Amplifier (PASA) Q Q/Cf Noise < 103 e Cf MIP = < 1mV T0 Tp 30mV 3x104 e OPA Cd OPA OPA T0 integrator with continuos reset CSA charge sensitive amplifier PZ differentiator 4 integrators (RC)4 diff output amplifier OA SA 4th order semi-gaussian shaper REQUIREMENTS Gain: 12mV / fC INL: < 0.3% FWHM: 190ns Crosstalk: < 0.1% Noise: < 1000 Power: < 20mW / ch 06 April 2005 Luciano Musa 40 Pre-Amplifier Shaping Amplifier (PASA) PASA TRANSFER FUNCTION n 1 sTp A Q Vout(s) = (1 sT )C 1 sT 1 sT 0 0 f f n ʆ-1 t n n Q A n Vout(t) = e C n! T f s n Peaking time Ts = nT0 nt Ts n Vout(peak) = QA n /Cf n!e n 1 0.8 0.6 0.4 0.2 2 4 5 6 7 Vout peak vs. n Vout (normalized to 1 ) vs. n 06 April 2005 3 Luciano Musa 41 Pre-Amplifier Shaping Amplifier (PASA) IMPULSE RESPONSE FUNCTION Q = 149 fC out- FWHM = 190 ns out+ 06 April 2005 Luciano Musa A(t / t)4e-4(t/t) 42 ALTRO Block Diagram Data Processor TSA1001 10-bit 25 MSPS 40 MSPS Correction of: • Slow drifts and systematic effects • Non-systematic effects Tail filtering Data compression 40-bit back linked format • Channel address • Time stamp Memory 5 kbyte 4 or 8 buffers Input Signal 0 L1: acquisition L2: event freeze Trigger signals 40-bit wide bus Bandwidth: 300 Mbyte/s Readout bus 06 April 2005 Luciano Musa 43 Baseline Correction 1 Systematic perturbation Baseline drift Fixed pedestal Slow drifts Systematic perturbation Combination H(z) = (1-z-1) / (1-0.5)z-1 fpd = 0 06 April 2005 Luciano Musa 44 Tail Cancellation Filter Functions signal (ion) tail suppression pulse narrowing improves cluster separation gain equalization Filtro compensates undershoot Architecture 3rd order IIR filter 18-bit fixed point 2’sC arithmetic single channel configuration 6 coefficients / channel 11 bits word extension 2’sC 18 bits 3rd order IIR filter 2’sC 18 bits 2’sC Filtro Narrows the pulse word rounding 11 bits 2’sC input output 11 bit 11 bit -1 Z K1 06 April 2005 L1 -1 Z L2 K2 -1 Z L3 K3 1 L1 z 1 1 L2 z 1 1 L3 z 1 H ( z ) = 18-bit fixed point arithmetic 1 K1 z 1 1 K 2 z 1 1 K 3 z 1 Luciano Musa 45 The Ion–Tail Problem ADC counts DIGITAL TAIL CANCELLATION PERFORMANCE 200 filter input threshold 150 filter off 100 50 0 Signal corresponding to 1 MIP -50 0 100 200 300 400 500 600 700 Time samples (170 ns) ADC counts Filtered data and fixed threshold 200 filter output threshold 150 filter on 100 50 0 -50 06 April 2005 0 100 200 300 400 Luciano Musa 500 600 700 Time samples (170 ns) 46 Baseline Correction 2 After Tail Cancellation Filter After Baseline Correction II Characteristics: Double threshold • Corrects non-systematic perturbations during the processing time • Moving Average Filter (MAF) • Double threshold scheme (acceptance window) Operation BC II A fixed threshold can now be applied safely 1. Slow variations of the signal Baseline updated 2. Fast variations of the signal Baseline value frozen din - bsl + offset , 0 dout 1023 0 , dout < 0 din - bsl + offset - 1024, dout > 1023 bslbsl calculation frozen bsl = 1 dinn 8 8 1 1 2 8 1 H ( z) = z 1 1 z z z 8 Unsigned 11-bit FIR system 06 April 2005 Luciano Musa 47 Experimental Results Analysis of the ion signal tail cosmic rays Baseline Moving average 06 April 2005 Luciano Musa 48 Experimental Results ALTRO Signal Processing Tail Cancellation • raw signal • moving average • after signal processing Baseline Restoration 06 April 2005 Luciano Musa 49 Experimental Results ALTRO Signal Processing HIGH MULTIPLICITY COSMIC RAYS Occupancy ~ 50% • raw samples • after signal processing 06 April 2005 Luciano Musa 50 ALTRO layout and production data Process HCMOS-7 (0.25 µm) Area 64 mm2 Dimensions 7.70 × 8.35 mm2 Transistors 6 milions Embedded 800 kbit The ALTRO Chip: a 16-channel A/D Converter and Digital Processor for Gas Detectors memory R. Esteve et al. - IEEE Transactions on Nuclear Science, Vol. 50, No. 6 December 2003 Supply voltage 06 April 2005 Luciano Musa 2.5 V Power 16mW / channel Package TQFP-176 ER (12 wafers) Apr ’02 Mass prod. (125 wafers) Dec ’02 Yield 84% 51 Digital Conditioning of the TPC Signal ALIROOT CLUSTERS + BASELINE PERTURBATIONS ADC counts EVENT 2 Baseline perturbations: • temp. variation (ramp-up) • gating grid switching • power supply instability • pick-up noise EVENT 1 EVENT 3 time samples 06 April 2005 Luciano Musa 52 Digital Conditioning of the TPC Signal ADC BC I TCF BC II 06 April 2005 Luciano Musa 53