]> jspc29.x-matter.uni-frankfurt.de Git - clocked_tdc.git/commitdiff
extend documentation and update default settings
authorJan Michel <michel@physik.uni-frankfurt.de>
Tue, 27 Aug 2024 12:44:30 +0000 (14:44 +0200)
committerJan Michel <michel@physik.uni-frankfurt.de>
Tue, 27 Aug 2024 12:44:30 +0000 (14:44 +0200)
code/HitBuffer.vhd
code/TDC_FF.vhd
dataformat.md

index 8984abff4e3e83e4e00ea50df61267ced9d3b558..836d7b655b9aa03d33889d3ad0443255c081cf60 100644 (file)
@@ -157,7 +157,7 @@ THE_HIT_BUF : entity work.fifo_36x32
     WrEn     => hit_buffer_write, 
     RdEn     => hit_buffer_read, 
     Reset    => hit_buffer_reset, 
-    AmFullThresh => "01000", 
+    AmFullThresh => "01010",
     Q        => hit_buffer_dout, 
     WCNT     => hit_buffer_level, 
     Empty    => hit_buffer_empty, 
index 8171c748fa9be60d584ff9cfbda33c169df2ae1f..681774535b7636cb56f4c6e55f633bdeeb0df981 100644 (file)
@@ -52,7 +52,7 @@ type status_t is array(0 to 31) of std_logic_vector(95 downto 0);
 signal hitbuffer_status : status_t;
 
 signal CONF_enable : std_logic_vector(31 downto 0) := (others => '1');
-signal CONF_configure : std_logic_vector(31 downto 0) := x"64139301";
+signal CONF_configure : std_logic_vector(31 downto 0) := x"01139301";
 alias CONF_externalcalibration : std_logic is CONF_configure(0);
 alias CONF_SPIKE               : std_logic_vector(3 downto 0) is CONF_configure(11 downto 8);
 alias CONF_window              : std_logic_vector(8 downto 0) is CONF_configure(20 downto 12);
index 875c8b37220f59eb57daedd73732c45789bb9e79..27fff51cf000a2c4796e41ebb03283a5302afdc2 100644 (file)
@@ -13,14 +13,29 @@ General Remarks
 * Data is not output in ordered fashion, hits are sent mixed between channels, not ordered by time.
 * There might be up to 10 hits per channel
 
+
+TDC Calibration
+--
 * TDC calibration is not necessary by default
-* TDC calibration is implemented in two options (usual 0xd trigger type):
+* TDC calibration is implemented in two options (usual 0xd trigger type, and 0xa trigger type for individual calibration):
   * Internal calibration with a 50 ns long pulse
   * Calibration pulse using the analog front-end chips 
     * about 110 ns long, depending on front-end settings
     * Might give several hits especially with low thresholds
   
 
+Data Handling
+--
+* No single edges are recorded
+* A rising edge is saved and stored together with the falling edge as soon as it arrives
+  * A spike rejection discards signals below a threshold. Can be configured in steps of 6.4 ns, with an inaccuracy of 6.4 ns (typically set to 19 ns)
+  * A long signal suppression discards signals with a ToT larger than some threshold (500 ns typical)
+* A 10 hit hit buffer stores values
+  * Words are removed from the hit buffer if their rising edge is older than the trigger window size (2 us typical)
+  * Words are removed if the buffer gets full
+* Readout takes place a configurable time after the reference time arrived (with delay in CTS: few ten nanoseconds)
+
+
 Data Format (v0)
 --
 * All time information is encoded in units of 0.4 ns.