TDC Versions

Version Release Date Release Notes
tdc_v2.4 12.2018
  • Epoch markers are not sent for each channel, but only once when the epoch of the next hit changes.
  • Better handling of small ring-buffer sizes - limit to few words per channel possible
  • The trigger window can be adjusted to end before the reference time (valid "after" settings -5000..-5, 50..5000 ns)
  • TrbNet allows to discard empty events by setting a minimum event size in the readout controller
  • Wrongly decoded hits (fine time 0x3ff) are replaced by an approximate time information. These hits are marked in Bit 29 in the data word.
tdc_v2.3 12.2015 Trailer word is introduced to mark some error bits. Temperature value is added to the data stream for status trigger (0xE). Some bugs are fixed for physics and status trigger mixture. The delay line size is decreased to 288 from 304.
tdc_v2.2 07.10.2015 The delay line size is decreased to 288 from 304. The trigger window end and coarse counter reset signals are distributed via SECONDARY clock nets. A bug in the semi-asynchronous stretcher (combinatorial reset signal caused blockage) is removed.
tdc_v2.1.6 06.08.2015 Updated the codes with record based bus lines.


Extra coarse counter reset register for higher frequency.



Several bug fixes for the stretcher option.



  • In case of a missing reference time a header error bit is set and DAQ keeps running.
  • Grass hits in ToT with calibration trigger is removed. The ToT mean value minus 10ns gives the stretching offset of the channel.
  • Channel invert bits are implemented.
  • Trigger window bug fix.
  • Resource usages in Channel_200 and Channel entity are decreased.
  • Hit detection is increased to 2 bits.
  • Coarse counter number is increased to channel number for better timing.
  • Instead of the internal oscillator 125MHz clock input is used for the calibration.



  • The dead time of the TDC is decreased to 20ns.
  • Small bug with “Light Mode” is removed.
  • “Data Limit” parameter is removed, as it is not needed due to the dynamic buffer size.
  • Coarse/Epoch counter misalignment bug is fixed.
  • Channel input is blocked until the falling edge information is written in the ring buffer to avoid data mismatch.
  • Ring buffer overwrite bit is implemented.



The ring buffer almost full threshold is made dynamic in order to “mimic” a adjustable ring buffer size.



Calibration trigger to physics trigger switching problem is fixed. With the calibration trigger 50ns long pulses are sent to the channels in order to calibrate the ToT measurements in the channels. There are some grass hits around the main peak.



Double edge detection in a single channel is implemented.

* Design under construction