[Halld-offline] FADC125 upsampling algorithm implemented in emulation mode

David Lawrence davidl at jlab.org
Mon Feb 9 06:35:45 EST 2015

Dear Offliners,

   I have just checked in a change to the DAQ library that implements emulation of the CMU
timing algoritm for the f125 ADC in emulation mode. This will not affect you unless you specify
that the f125 pulse times found in the data stream should be ignored, thereby triggering
emulation of the pulse time hits using window raw data. Here are a couple of notes:
To ignore firmware generated pulse times and thereby turn on emulation, add the following:


By default you will now get the CMU up sampling algorithm. To emulate the older f250  
algorithm add the following to the command line:


n.b. this f250 emulation mode does not seem to reproduce what the firmware reports very well.
It is, however, the same algorithm used for emulation of the f125 prior to this most recent
commit so can be used for comparison.

IMPORTANT: The units reported by the f125 upsampling algorithm are 1/10 of a sample
time while those of the f250 algorithm are 1/64 of a sample time. The code just committed
scales the upsampling algorithm results to be in units of 1/64 of a sample in order to
match the existing downstream code. When this new algorithm is implemented in firmware
we will need to handle the unit change in some different way (e.g. calibration constants).
Regardless, the user will need to be keenly aware of what they are doing when comparing
emulated f125 pulse times to firmware generated pulse times given that there will be
2 different firmware algorithms and 2 different emulation algorithms and likely 2 different
eras of the DAQ library modifications for implementing the current best case. Sorry if this
is confusing, but that is the situation. I’d rather people be a bit confused than blissfully
ignorant of the potential for complication here.


More information about the Halld-offline mailing list