3.2 Digital Implementation
57
then operate like the constant subtraction within an event, but with a freshly updated
baseline value.
The VPD filter can also be configured to be always enabled and will then operate
similar to the other baseline correction filters. To avoid inclusion of pulses in the
baseline calculation, the filter uses thresholds, where if the signal is above or below
the set thresholds, the input value is not included in the baseline calculation. To avoid
that the signal gets stuck permanently outside the thresholds an auto-reset feature
is available that will reset the filter if the signal stays outside the thresholds for too
long. This resetting feature is similar to the one used for the Baseline Correction 2
(BC2), as will be further discussed in Sect. 3.2.3.3.
The VPD filter operates with a programmable response time of τ = 2
n sampling
periods, where n is a value between zero and fifteen which needs to be adjusted to
fit the noise of the environment. In sense, the baseline is computed as cumulative
average of a programmable number of samples of the input signal.
y[n] = u[n] −
x[n − 1]
τ
(3.1a)
x[n] = x[n − 1] + y[n]
(3.1b)
Where y[n] is the output value with the baseline removed, x[n] is the cumulative
sum, u[n] is the input sample value and, τ = 2
n is the response time and n in τ is
the number of samples the sum is calculated over.
If there are systematic effects, i.e. a fixed superimposed pattern is always present
at a fixed delay from the start of an event, this can instead be corrected with the
use of a pattern memory. The memory is programmed beforehand with the shape
of the systematic perturbation and the shape is subtracted from the input signal for
each event in the form of y[n] = u[n] − m[n], where y[n] is the input, u[n] is the
input and m[n] is the memory value. The memory can subtract values up to the full
programmable length of an event, which last a maximum of 1024 sampling cycles.
A counter value, which increases at each sample cycle, is used for addressing the
memory.
By using the memory as a look-up table, it is possible to, for example, perform
non-linear conversion or to equalize the response across different channels. In this
mode the circuit can perform a static conversion of the input signal of the type
y[n] = F(u[n]), where the input value u[n] is used as for addressing the memory.
The output value y[n] is stored in the memory position that is addressed. At any
cycle n, the output y[n] depends at most on the input sample u[n] at the same time,
but not on past or future samples of the input.
For testing purposes, the memory can also be used to inject a pattern into the data
chain to allow testing of downstream logic, without the need to provide an external
analogue signal in the front-end.
New to the SAMPA is the possibility to record the input signal directly to the
pattern memory, this avoids the time-intensive process of acquiring the pattern to the
offline system and re-uploading the data to the individual channel memories. New is
Précédent

- 76/173

Suivant