SPADIC 1.0 Digital Signal Processing - SuS - Homepage des ... · Michael Krieger SPADIC 1.0 Digital...

15
Overview How it works Limitations SPADIC 1.0 Digital Signal Processing Michael Krieger CBM FEE/DAQ Workshop January 26, 2012 Michael Krieger SPADIC 1.0 Digital Signal Processing

Transcript of SPADIC 1.0 Digital Signal Processing - SuS - Homepage des ... · Michael Krieger SPADIC 1.0 Digital...

OverviewHow it works

Limitations

SPADIC 1.0 Digital Signal Processing

Michael Krieger

CBM FEE/DAQ Workshop

January 26, 2012

Michael Krieger SPADIC 1.0 Digital Signal Processing

OverviewHow it works

Limitations

New in SPADIC 1.0

digital filter

4 stages

16 bit resolution

programmable coefficients

x yFilterADC Hit Logic

Michael Krieger SPADIC 1.0 Digital Signal Processing

OverviewHow it works

Limitations

Why?

prevent pile-up

separate individual pulses (“ion tail cancellation”)

help hit logic to work properly

eliminate low-frequency baseline fluctuations

add flexibility → adapt to detector characteristics

Filter

Michael Krieger SPADIC 1.0 Digital Signal Processing

OverviewHow it works

Limitations

one filter stage

a b

a b

abx y

yx

yx

x[n]+bx[n−1]+ay[n−1] = y[n]

actual implementation:

split:

swap:

Michael Krieger SPADIC 1.0 Digital Signal Processing

OverviewHow it works

Limitations

Finding the output signal

numerically: use recursive definition

y[n] = x[n]+bx[n−1]+ay[n−1]

analytically: Z-transform translates into multiplication

Z {y} = H ·Z {x}

transfer function

H(z) = 1+bz−1

1−az−1

Michael Krieger SPADIC 1.0 Digital Signal Processing

OverviewHow it works

Limitations

Z-transform relatively easy with exponential functions

model the signal as weighted sum of exponential terms:

x[n] =∑wie−nT/τi =∑

wiqni (0 ≤ qi ≤ 1)

data by C. Bergmann & D. Emschermann w1 = 0.5,τ1 = 30ns,(q1 = 0.264)w2 = 1.0,τ2 = 90ns,(q2 = 0.641)w3 = 0.1,τ3 = 1.5µs, (q3 = 0.973)

get the real signal by convolution with shaper impulse response

can be ignored: Hfilter(HshaperZ {x}) = Hshaper(HfilterZ {x})

Michael Krieger SPADIC 1.0 Digital Signal Processing

OverviewHow it works

Limitations

Tail cancellation

filter stage transfers relative weights wi between terms

one exponential term can be eliminated

a = 0.948b =−0.973w1 w3w2 w1 w3w2

useful coefficient range

−1 ≤ b < 0, 0 ≤ a < 1

|a| < |b| ⇔ 0 ≤ a <−b ≤ 1

simple/extreme case: a = 0,b =−1 ⇒ y[n] = x[n]−x[n−1]

Michael Krieger SPADIC 1.0 Digital Signal Processing

OverviewHow it works

Limitations

Examples

normal

Michael Krieger SPADIC 1.0 Digital Signal Processing

OverviewHow it works

Limitations

Examples

more aggressively

Michael Krieger SPADIC 1.0 Digital Signal Processing

OverviewHow it works

Limitations

Examples

extreme

Michael Krieger SPADIC 1.0 Digital Signal Processing

OverviewHow it works

Limitations

Limitations

Noise / Quantization error

filter has high-pass characteristic

noise present in signal gets emphasized

analog noise + ADC quantization error

forces tradeoff

filter introduces additional quantization error

FilterADC

Michael Krieger SPADIC 1.0 Digital Signal Processing

OverviewHow it works

Limitations

Quantization error

14 bit

10 bit

R

80

0

LSBs

Michael Krieger SPADIC 1.0 Digital Signal Processing

OverviewHow it works

Limitations

Quantization error: simulations

-8

-7

-6

-5

-4

-3

-2

-1

0

0 10k 20k 30k 40k 50k 60k 70k

samples

Error distribution

0 200 400 600 800 1000

count

Error histogram

16 bit

12 bit

10 bit

Michael Krieger SPADIC 1.0 Digital Signal Processing

OverviewHow it works

Limitations

Quantization error: simulations

Michael Krieger SPADIC 1.0 Digital Signal Processing

OverviewHow it works

Limitations

Quantization error: simulations

Michael Krieger SPADIC 1.0 Digital Signal Processing