General Design of the Firmware: Difference between revisions

From GammaSphere DAQ
Jump to navigation Jump to search
(Created page with "=== Event Data Nomenclature === Signal edges marked by discriminator firings are named ''discriminator hits''. *''Discriminator hits'' become accepted hits after passing thro...")
 
No edit summary
Line 1: Line 1:
=== Event Data Nomenclature ===
== Event Data Nomenclature ==
Signal edges marked by discriminator firings are named ''discriminator hits''.  
Signal edges marked by discriminator firings are named ''discriminator hits''.  
*''Discriminator hits'' become accepted hits after passing through pileup rejection logic.  
*''Discriminator hits'' become accepted hits after passing through pileup rejection logic.  
Line 8: Line 8:
# When using the trigger system, the digitizer may assert a ''Throttle Request'' to the trigger if its FIFO is getting too full.  This request, if honored, will result in the trigger suspending the issuance of trigger accept messages so that the readout system may drain the FIFO forming an automatic flow control mechanism to avoid ''dropped events''.
# When using the trigger system, the digitizer may assert a ''Throttle Request'' to the trigger if its FIFO is getting too full.  This request, if honored, will result in the trigger suspending the issuance of trigger accept messages so that the readout system may drain the FIFO forming an automatic flow control mechanism to avoid ''dropped events''.


==== Discriminator Modes ====
=== Discriminator Modes ===
The firmware supports either ''leading-edge'' or ''constant-fraction'' discriminator logic, independently selected per channel.  In leading-edge mode the operation is controlled by a delay value ‘d’ and a threshold such that the discriminator fires if the difference between sample X(n) and sample X(n-d), after some filtering, is greater than the threshold.  In constant-fraction mode, the user specifies a fraction value along with the same timing parameter ‘d’; the discriminator logic continuously calculates [X(n)*fraction] – X(d), and fires when this signal recrosses the initial value it had before the start of the edge.
The firmware supports either ''leading-edge'' or ''constant-fraction'' discriminator logic, independently selected per channel.  In leading-edge mode the operation is controlled by a delay value ‘d’ and a threshold such that the discriminator fires if the difference between sample X(n) and sample X(n-d), after some filtering, is greater than the threshold.  In constant-fraction mode, the user specifies a fraction value along with the same timing parameter ‘d’; the discriminator logic continuously calculates [X(n)*fraction] – X(d), and fires when this signal recrosses the initial value it had before the start of the edge.


A 2nd, separate copy of the leading-edge discriminator, with its own threshold, called the coarse discriminator is also provided.  The coarse discriminator fires well before the main discriminator does as it sees the edge earlier.  The output of this device is used to capture early energy sum values well before the edge occurs, for use in pole-zero and/or baseline correction software after data is collected.  Figure 3, later in this document, will explain these terms more fully.
A 2nd, separate copy of the leading-edge discriminator, with its own threshold, called the coarse discriminator is also provided.  The coarse discriminator fires well before the main discriminator does as it sees the edge earlier.  The output of this device is used to capture early energy sum values well before the edge occurs, for use in pole-zero and/or baseline correction software after data is collected.  Figure 3, later in this document, will explain these terms more fully.


==== Pileup and Discriminator Hold-Off ====
=== Pileup and Discriminator Hold-Off ===
When pileup rejection is '''on''', ''discriminator hits'' become ''accepted hits'' only if there is no pileup.
When pileup rejection is '''on''', ''discriminator hits'' become ''accepted hits'' only if there is no pileup.


When pileup rejection is '''off''', discriminator hits always become accepted hits, but differentiation between the first accepted hit and all that pile up upon it (a “pileup train”) is needed
When pileup rejection is '''off''', discriminator hits always become accepted hits, but differentiation between the first accepted hit and all that pile up upon it (a “pileup train”) is needed.
*The ''first'' hit of a pileup train is still called the ''accepted hit'' but all '''subsequent''' hits within a pileup train are called ''extended events''.
 
The ''pileup inspection time'' is the minimum separation between ''discriminator hits'' before pileup is declared to exist.
*The firmware can withstand a maximum of 16 events piled up on top of each other before the pileup inspection time of the first event expires.  Should this be exceeded the digitizer enters the ''General Error'' state and all data processing within the channel stops until the digitizer is reset.
 
Each channel implements a ''discriminator hold-off'' time that is the amount of time after a ''discriminator hit'' that the discriminator is blocked from marking another hit.  This is related to the rise time of the signal so that only one ''discriminator hit'' is marked per rise.
*If the user sets the ''discriminator hold-off'' time to a value less than the ''pileup inspection time'', the digitizer will enter the ''Pileup Too Short'' error state and must be manually reset with adjusted parameters.


''Go back to [[ANL Digitizer Firmware for Advanced Users]]''
''Go back to [[ANL Digitizer Firmware for Advanced Users]]''


''Go back to [[Digital Gammasphere and the SBX Upgrade]]''
''Go back to [[Digital Gammasphere and the SBX Upgrade]]''

Revision as of 16:22, September 29, 2021

Event Data Nomenclature

Signal edges marked by discriminator firings are named discriminator hits.

  • Discriminator hits become accepted hits after passing through pileup rejection logic.
  • The firmware may run by itself (“internal accept all” mode) or with the trigger system (“TTCL mode”).
  1. When running in “internal” mode accepted hits immediately become accepted events that are later read out.
  2. When the trigger system is used accepted hits wait in a queue for a limited time. The accepted hits in this queue only become accepted events if selected by a trigger accept message from the trigger. Accepted hits not marked as accepted events fall off the end of the pipeline and are discarded.
  • The expectation is that all Accepted Events will be read out. Accepted Events that were unable to be copied into the output buffer due to FIFO backup or other readout interference are named dropped events.
  1. When using the trigger system, the digitizer may assert a Throttle Request to the trigger if its FIFO is getting too full. This request, if honored, will result in the trigger suspending the issuance of trigger accept messages so that the readout system may drain the FIFO forming an automatic flow control mechanism to avoid dropped events.

Discriminator Modes

The firmware supports either leading-edge or constant-fraction discriminator logic, independently selected per channel. In leading-edge mode the operation is controlled by a delay value ‘d’ and a threshold such that the discriminator fires if the difference between sample X(n) and sample X(n-d), after some filtering, is greater than the threshold. In constant-fraction mode, the user specifies a fraction value along with the same timing parameter ‘d’; the discriminator logic continuously calculates [X(n)*fraction] – X(d), and fires when this signal recrosses the initial value it had before the start of the edge.

A 2nd, separate copy of the leading-edge discriminator, with its own threshold, called the coarse discriminator is also provided. The coarse discriminator fires well before the main discriminator does as it sees the edge earlier. The output of this device is used to capture early energy sum values well before the edge occurs, for use in pole-zero and/or baseline correction software after data is collected. Figure 3, later in this document, will explain these terms more fully.

Pileup and Discriminator Hold-Off

When pileup rejection is on, discriminator hits become accepted hits only if there is no pileup.

When pileup rejection is off, discriminator hits always become accepted hits, but differentiation between the first accepted hit and all that pile up upon it (a “pileup train”) is needed.

  • The first hit of a pileup train is still called the accepted hit but all subsequent hits within a pileup train are called extended events.

The pileup inspection time is the minimum separation between discriminator hits before pileup is declared to exist.

  • The firmware can withstand a maximum of 16 events piled up on top of each other before the pileup inspection time of the first event expires. Should this be exceeded the digitizer enters the General Error state and all data processing within the channel stops until the digitizer is reset.

Each channel implements a discriminator hold-off time that is the amount of time after a discriminator hit that the discriminator is blocked from marking another hit. This is related to the rise time of the signal so that only one discriminator hit is marked per rise.

  • If the user sets the discriminator hold-off time to a value less than the pileup inspection time, the digitizer will enter the Pileup Too Short error state and must be manually reset with adjusted parameters.

Go back to ANL Digitizer Firmware for Advanced Users

Go back to Digital Gammasphere and the SBX Upgrade