Busy Box and related/BusyBox Registers: Difference between revisions

From ift
(Updated Trigger Modules Regesiter definition)
No edit summary
 
(One intermediate revision by the same user not shown)
Line 231: Line 231:
!width="170"|Name                   
!width="170"|Name                   
!Address   
!Address   
!Type  
!Mode 
!width="90"|Bit slice  
!Description
!Description
|----
|----
|
|rowspan="11"|Control             
|rowspan="11"|0x3000   
|RW   
|[15:13]   
|Unused
|----
|RW
|[12]     
|Trigger Input Mask Enable. Default=0
|----
|RW
|[11]     
|L1a message mask. Default=1
|----
|RW
|[10]     
|L2 Timeout FIFO storage mask. Default=1
|----
|RW
|[9]       
|L2r FIFO storage mask. Default=1
|----
|RW
|[8]       
|L2a FIFO storage mask. Default=1
|----
|RW
|[7:4]     
|Unused
|----
|RW
|[3]       
|L0 support. Default=1
|----
|RW
|[2]       
|Unused
|----
|RW
|[1]       
|Disable_error_masking. Default=0
|----
|RW
|[0]       
|Serial B channel on/off. Default=1
|----
|rowspan="6"|Control             
|rowspan="6"|0x3001   
|R   
|[15:8]   
|Trigger Receiver Version. Default=0x16
|----
|R   
|[7:4]     
|CDH version. Default=0x2
|----
|R   
|[3]       
|Not used
|----
|R
|[2]       
|Busy (receiving sequence) -
|----
|R
|[1]       
|Run Active -
|----
|R
|[0]       
|Bunch_counter overflow -
|----
|Module Reset         
|0x3002   
|T   
|N/A       
|Reset Module
|----
|Reset Counters       
|0x3008   
|T   
|N/A       
|Write to this registers will reset the counters in the module
|----
|Issue Testmode       
|0x300A   
|T   
|N/A       
|Debug: Issues testmode sequence. Note that serialB channel input MUST be disabled when using this feature.
|----
|rowspan="2"|L1_Latency           
|rowspan="2"|0x300C   
|RW   
|[15:12]   
|Uncertainty region +- N. default value 0x2 (50 ns)
|----
|RW   
|[11:0]   
|Latency from L0 to L1. default value 0x0D4 (5.3 us)
|----
|L2_Latency MAX       
|0x300E   
|RW   
|[15:0]   
|Max Latency from BC0 to L2. default value 0x4E20 (500 us)
|----
|L2_Latency MIN       
|0x300F   
|RW   
|[15:0]   
|Min Latency from BC0 to L2. default value 0x0C80 (80 us)
|----


<nowiki>Control[23:0]</nowiki>     
|
0x3000
|
RW
|


<nowiki>[0] Serial B channel on/off </nowiki>          ''Default:   ''1''
|L1_msg_latency MAX   
 
|0x3014    
<nowiki>[1] </nowiki>      Disable_error_masking        ''0''
|RW   
 
|[15:0]    
<nowiki>[2] NA</nowiki>                          ''0''
|Max Latency from BC0 to L1 msg. default value 0x0028 (1 us)
 
|----
<nowiki>[3] L0 support </nowiki>                      ''1''
|L1_msg_latency MIN   
 
|0x3015   
<nowiki>[4:7] </nowiki>      ''(Not Used)''
|RW   
 
|[15:0]    
<nowiki>[8] L2a FIFO storage mask</nowiki>              ''1''
|Min Latency from BC0 to L1 msg. default value 0x0F8 (6.2 us)
 
|----
<nowiki>[9] L2r FIFO storage mask</nowiki>              ''1''
|Pre_pulse_counter   
 
|0x3016   
<nowiki>[10] L2 Timeout FIFO storage mask</nowiki>          ''1''
|R   
 
|[15:0]    
<nowiki>[11] L1a message mask </nowiki>              ''1''
|Number of decoded pre-pulses.
 
|----
<nowiki>[12]</nowiki>      '' ''Trigger Input Mask Enable        ''0''
|BCID_Local           
 
|0x3018   
<nowiki>[13:15] </nowiki>      ''(Not Used)''
|R   
 
|[11:0]    
<nowiki>[16] </nowiki>      Bunch_counter overflow            -
|Number of bunchcrossings at arrival of L1 trigger.
 
|----
<nowiki>[17] Run Active </nowiki>                      -
|L0_counter           
 
|0x301A   
<nowiki>[18] Busy (receiving sequence)</nowiki>              -
|R   
 
|[15:0]    
<nowiki>[19] </nowiki>      ''Not Used''
|Number of L0 triggers
 
|----
<nowiki>[23:20] CDH version </nowiki>                  0x2
|L1_counter           
|-
|0x301C   
|
|R   
Module Reset
|[15:0]   
|
|Number of L1 triggers
0x3001
|----
|
|L1_msg_counter       
T
|0x301E   
|
|R   
Reset Module
|[15:0]   
|-
|Number of successfully decoded L1 messages
|
|----
NA
|L2a_counter         
|
|0x3020   
0x3002
|R   
|
|[15:0]   
|
|Number of successfully decoded L2a messages
|-
|----
|
|L2r_counter         
NA
|0x3022   
|
|R   
0x3003
|[15:0]   
|
|Number of successfully decoded L2r messages
|
|----
|-
|Bunchcounter         
|
|0x3026   
Reset Counters
|R   
|
|[11:0]   
0x3004
|Debug: Number of bunchcrossings
|
|----
T
|SingleHammingErrorCnt
|
|0x302C   
Write to this registers will reset the counters in the module
|R   
|-
|[15:0]    
|
|Number of single bit hamming errors
Issue Testmode
|----
|
|DoubleHammingErrorCnt
0x3005
|0x302D   
|
|R   
T
|[15:0]    
|
|Number of double bit hamming errors
Debug: Issues testmode sequence. Note that serialB channel input MUST be disabled when using this feature.
|----
|-
|MsgDecodingErrorCnt 
|
|0x302E   
 
|R   
<nowiki>L1_Latency[15:0]</nowiki>     
|[15:0]    
|
|Number of message decoding errors
0x3006
|----
|
|SeqTimoutErrorCnt   
RW
|0x302F   
|
|R   
 
|[15:0]    
<nowiki>[15:12] Uncertainty region +- N. default value 0x2 (50 ns)</nowiki>     
|Number of errors related to sequence and timeouts.
 
|----
<nowiki>[11:0] Latency from L0 to L1, default value 0x0D4 (5.3 us) </nowiki>     
|Buffered_events        
|-
|0x3040   
|
|R   
 
|[4:0]    
<nowiki>L2_Latency[31:0]</nowiki>     
|Number of events stored in the FIFO.
|
|----
0x3007
|DAQ_Header01         
|
|0x3042   
RW
|R   
|
|[15:0]    
 
|Latest received DAQ Header 1 [15:0]
<nowiki>[15:0] Max Latency from BC0 to L2, default value 0x4E20 (500 us)</nowiki>        
|----
 
|DAQ_Header01         
<nowiki>[31:16] Min Latency from BC0 to L2, default value 0x0C80 (80 us)</nowiki>     
|0x3043   
|-
|R   
|
|[15:0]    
L2_Extdended
|Latest received DAQ Header 1 [31:16]
 
|----
<nowiki>Latency[31:0]</nowiki>     
|DAQ_Header02         
|
|0x3044   
0x3009
|R   
|
|[15:0]    
RW
|Latest received DAQ Header 2 [15:0]
|
|----
 
|DAQ_Header02         
<nowiki>[15:0] Max Latency from BC0 to L2 Extended window end, default value 0x4E48 (501 us)</nowiki>     
|0x3045   
 
|R   
<nowiki>[31:16] Min Latency from BC0 to L2 Extended window start, default value 0x0C80 (80 us)</nowiki>     
|[15:0]    
|-
|Latest received DAQ Header 2 [31:16]
|
|----
 
|DAQ_Header03         
<nowiki>L1_msg_latency[31:0]</nowiki>     
|0x3046   
|
|R   
0x300A
|[15:0]   
|
|Latest received DAQ Header 3 [15:0]
RW
|----
|
|DAQ_Header03         
 
|0x3047   
<nowiki>[15:0] Max Latency from BC0 to L1 </nowiki>      msg, default value 0x0028 (1 us)
|R    
 
|[15:0]   
<nowiki>[31:16] Min Latency from BC0 to L1 </nowiki>      msg, default value 0x0F8 (6,2 us)
|Latest received DAQ Header 3 [31:16]
|-
|----
|
|DAQ_Header04         
Pre_pulse_counter
|0x3048   
 
|R   
<nowiki>[15:0]</nowiki>     
|[15:0]    
|
|Latest received DAQ Header 4 [15:0]
0x300B
|----
|
|DAQ_Header04         
R
|0x3049   
|
|R   
Number of decoded pre-pulses.
|[15:0]   
|-
|Latest received DAQ Header 4 [31:16]
|
|----
BCID_Local
|DAQ_Header05         
 
|0x304a   
<nowiki>[11:0]</nowiki>     
|R    
|
|[15:0]   
0x300C
|Latest received DAQ Header 5 [15:0]
|
|----
R
|DAQ_Header05         
|
|0x304b   
Number of bunchcrossings at arrival of L1 trigger.
|R    
|-
|[15:0]   
|
|Latest received DAQ Header 5 [31:16]
 
|----
<nowiki>L0_counter[15:0]</nowiki>     
|DAQ_Header06         
|
|0x304c   
0x300D
|R   
|
|[15:0]   
R
|Latest received DAQ Header 6 [15:0]
|
|----
Number of L0 triggers
|DAQ_Header06         
|-
|0x304d   
|
|R    
 
|[15:0]   
<nowiki>L1_counter[15:0]</nowiki>     
|Latest received DAQ Header 6 [31:16]
|
|----
0x300E
|DAQ_Header07         
|
|0x304e   
R
|R    
|
|[15:0]   
Number of L1 triggers
|Latest received DAQ Header 7 [15:0]
|-
|----
|
|DAQ_Header07         
 
|0x304f   
<nowiki>L1_msg_counter[15:0]</nowiki>     
|R   
|
|[15:0]   
0x300F
|Latest received DAQ Header 7 [31:16]
|
|----
R
|Event_info     
|
|0x3050   
Number of successfully decoded L1 messages
|R   
|-
|[12:0]    
|
|Latest Received Event information:
 
|----
<nowiki>L2a_counter[15:0]</nowiki>     
|colspan="2" rowspan="10"|
|
|R    
0x3010
|[12]     
|
|Include payload
R
|----
|
|R   
Number of successfully decoded L2a messages
|[11]       
|-
|Event has L2 Accept trigger
|
|----
 
|R    
<nowiki>L2r_counter[15:0]</nowiki>     
|[10]       
|
|Event has L2 Reject trigger
0x3011
|----
|
|R   
R
|[9]      
|
|Calibration trigger event
Number of successfully decoded L2r messages
|----
|-
|R    
|
|[8]      
NA
|Software trigger event
|
|----
0x3012
|R   
|
|[4:7]    
|
|Calibration/SW trigger type (= RoC)
|-
|----
|
|R   
Bunchcounter
|[3]      
 
|NA(=‘0’)
<nowiki>[11:0]</nowiki>     
|----
|
|R    
0x3013
|[2]       
|
|NA(=‘0’)
R
|----
|
|R   
Debug: Number of bunchcrossings
|[1]      
|-
|Region of Interest announced (=ESR)
|
|----
hammingErrorCnt
|R    
 
|[0]       
<nowiki>[31:0]</nowiki>        
|NA(=’0’)
|
|----
0x3016
|Event_error         
|
|0x3052   
R
|R   
|
|[15:0]    
 
|Latest Received Event error conditions:
<nowiki>[15:0] Number of single bit hamming errors [31:16] Number of double bit hamming errors</nowiki>        
|----
|-
|colspan="2" rowspan="16"|
|
|R   
ErrorCnt
|[15]        
 
|L1 message arrives outside legal timeslot
<nowiki>[31:0]</nowiki>     
|----
|
|R    
0x3017
|[14]     
|
|Missing L1
R
|----
|
|R   
 
|[13]       
<nowiki>[15:0] Number of message decoding errors </nowiki>     
|Boundary L1
 
|----
<nowiki>[31:16] Number of errors related to sequence and timeouts.</nowiki>     
|R    
|-
|[12]     
|
|Spurious L1
Buffered_events
|----
 
|R   
<nowiki>[4:0]</nowiki>     
|[11]       
|
|Missing L0
0x3020
|----
|
|R    
R
|[10]     
|
|Spurious L0
Number of events stored in the FIFO.
|----
|-
|R   
|
|[9]      
 
|TTCrx Address Error (not X”0003”)
<nowiki>DAQ_Header01[31:0]</nowiki>     
|----
|
|R    
0x3021
|[8]       
|
|NA (= ‘0’)
R
|----
|
|R   
Latest received DAQ Header 1
|[7]       
|-
|Incomplete L2a Message
|
|----
 
|R    
<nowiki>DAQ_Header02[31:0]</nowiki>     
|[6]       
|
|Incomplete L1 Message
0x3022
|----
|
|R   
R
|[5]      
|
|Unknown Message Address Received
Latest received DAQ Header 2
|----
|-
|R    
|
|[4]       
 
|Double Bit Hamming Error Broadcast.
<nowiki>DAQ_Header03[31:0]</nowiki>        
|----
|
|R   
0x3023
|[3]      
|
|Single Bit Hamming Error Broadcast.
R
|----
|
|R   
Latest received DAQ Header 3
|[2]      
|-
|Double Bit Hamming Error Individually Addr.
|
|----
 
|R   
<nowiki>DAQ_Header04[31:0]</nowiki>        
|[1]      
|
|Single Bit Hamming Error Individually Addr.
0x3024
|----
|
|R   
R
|[0]      
|
|Serial B Stop Bit Error
Latest received DAQ Header 4
|----
|-
|Event_error         
|
|0x3053   
 
|R   
<nowiki>DAQ_Header05[31:0]</nowiki>        
|[8:0]    
|
|Latest Received Event error conditions:
0x3025
|----
|
|colspan="2" rowspan="9"|
R
|R   
|
|[8]      
Latest received DAQ Header 5
|NA (= ‘0’)
|-
|----
|
|R   
 
|[7]      
<nowiki>DAQ_Header06[31:0]</nowiki>     
|L2 message content error
|
|----
0x3026
|R    
|
|[6]       
R
|L1 message content error
|
|----
Latest received DAQ Header 6
|R   
|-
|[5]      
|
|Prepulse error (=0; possible future use)
 
|----
<nowiki>DAQ_Header07[31:0]</nowiki>     
|R   
|
|[4]      
0x3027
|NA (= ‘0’)
|
|----
R
|R   
|
|[3]      
Latest received DAQ Header 7
|NA (= ‘0’)
|-
|----
|
|R   
Event_info
|[2]      
 
|L2 message missing/timeout
<nowiki>[17:0]</nowiki>     
|----
|
|R   
0x3028
|[1]      
|
|L2 message arrives outside legal timeslot
R
|----
|
|R   
Latest Received Event information:
|[0]      
 
|L1 message missing/timeout
<nowiki>[0] ‘0’</nowiki>     
|----
 
<nowiki>[1] Region of Interest announced (=ESR)</nowiki>     
 
<nowiki>[2] ‘0’</nowiki>     
 
<nowiki>[3] ‘0’</nowiki>     
 
<nowiki>[4:7] Calibration/SW trigger type (= </nowiki>      RoC)
 
<nowiki>[8] Software trigger event</nowiki>     
 
<nowiki>[9] Calibration trigger event</nowiki>     
 
<nowiki>[10] Event has L2 Reject trigger</nowiki>     
 
<nowiki>[11] Event has L2 Accept trigger</nowiki>     
 
<nowiki>[12] Include payload</nowiki>     
 
<nowiki>[17:13] SCLK phase when (L0/L1)trigger arrives</nowiki>     
|-
|
Event_error
 
<nowiki>[24:0]</nowiki>     
|
0x3029
|
R
|
Latest Received Event error conditions:
 
<nowiki>[0] Serial B Stop Bit Error</nowiki>     
 
<nowiki>[1] Single Bit Hamming Error Individually </nowiki>      Addr.
 
<nowiki>[2] Double Bit Hamming Error Individually </nowiki>      Addr.
 
<nowiki>[3] Single Bit Hamming Error Broadcast.</nowiki>     
 
<nowiki>[4] Double Bit Hamming Error Broadcast.</nowiki>     
 
<nowiki>[5] Unknown Message Address Received</nowiki>     
 
<nowiki>[6] Incomplete L1 Message</nowiki>     
 
<nowiki>[7] Incomplete L2a Message</nowiki>     
 
<nowiki>[8] NA </nowiki>     
 
<nowiki>[9] </nowiki>      TTCrx Address Error (not X”0003”)
 
<nowiki>[10] Spurious L0 </nowiki>     
 
<nowiki>[11] Missing </nowiki>      L0
 
<nowiki>[12] Spurious L1</nowiki>     
 
<nowiki>[13] Boundary L1</nowiki>     
 
<nowiki>[14] Missing L1</nowiki>     
 
<nowiki>[15] L1 message arrives outside legal timeslot</nowiki>     
 
<nowiki>[16] L1 message missing/timeout</nowiki>     
 
<nowiki>[17] L2 message arrives outside legal timeslot</nowiki>     
 
<nowiki>[18] L2 message missing/timeout</nowiki>     
 
<nowiki>[19] Boundary L2 Message</nowiki>     
 
<nowiki>[20] NA</nowiki>     
 
<nowiki>[21] </nowiki>      Prepulse error (=0; possible future use)
 
<nowiki>[22] L1 message content error</nowiki>     
 
<nowiki>[23] L2 message content error</nowiki>     
 
<nowiki>[24] NA</nowiki>     
|-
|
 
<nowiki>L1_MessageHeader[11:0]</nowiki>     
|
0x3030
|
R
|
Debug: Latest received L1 Message
|-
|
 
<nowiki>L1_MessageData1[11:0]</nowiki>     
|
0x3031
|
R
|
Debug: Latest received L1 Message
|-
|
 
<nowiki>L1_MessageData2[11:0]</nowiki>     
|
0x3032
|
R
|
Debug: Latest received L1 Message
|-
|
 
<nowiki>L1_MessageData3[11:0]</nowiki>     
|
0x3033
|
R
|
Debug: Latest received L1 Message
|-
|
 
<nowiki>L1_MessageData4[11:0]</nowiki>     
|
0x3034
|
R
|
Debug: Latest received L1 Message
|-
|
 
<nowiki>L2aMessageHeader[11:0]</nowiki>     
|
0x3035
|
R
|
Debug: Latest received L2a Message
|-
|
 
<nowiki>L2aMessageData1[11:0]</nowiki>     
|
0x3036
|
R
|
Debug: Latest received L2a Message
|-
|
 
<nowiki>L2aMessageData2[11:0]</nowiki>     
|
0x3037
|
R
|
Debug: Latest received L2a Message
|-
|
 
<nowiki>L2aMessageData3[11:0]</nowiki>     
|
0x3038
|
R
|
Debug: Latest received L2a Message
|-
|
 
<nowiki>L2aMessageData4[11:0]</nowiki>     
|
0x3039
|
R
|
Debug: Latest received L2a Message
|-
|
 
<nowiki>L2aMessageData5[11:0]</nowiki>     
|
0x303A
|
R
|
Debug: Latest received L2a Message
|-
|
 
<nowiki>L2aMessageData6[11:0]</nowiki>     
|
0x303B
|
R
|
Debug: Latest received L2a Message
|-
|
 
<nowiki>L2aMessageData7[11:0]</nowiki>     
|
0x303C
|
R
|
Debug: Latest received L2a Message
|-
|
 
<nowiki>L2rMessageHeader[11:0]</nowiki>     
|
0x303D
|
R
|
Debug: Latest received L2r Message
|-
|
RoIMessageHeader
 
<nowiki>[11:0]</nowiki>     
|
0x303E
|
R
|
Debug: Latest received RoI Message
|-
|
 
<nowiki>RoIMessageData1[11:0]</nowiki>     
|
0x303F
|
R
|
Debug: Latest received RoI Message
|-
|
 
<nowiki>RoIMessageData2[11:0]</nowiki>     
|
0x3040
|
R
|
Debug: Latest received RoI Message
|-
|
 
<nowiki>RoIMessageData3[11:0]</nowiki>     
|
0x3041
|
R
|
Debug: Latest received RoI Message
|-
|
FIFO_read_enable
|
0x3080
|
T
|
Debug: Triggers a readout pulse to FIFO
|-
|
FIFO_DAQHeader
 
<nowiki>[31:0]</nowiki>     
|
0x3081
|
R
|
Debug: Output of FIFO
|}
|}

Latest revision as of 07:37, 24 April 2012

Busy Box Status and Control Registers
Name Address Mode Description Default Value
TX module(15:0) 0x0001 RW For sending messages to DRORCs.
  • Bit 7:0 is TX data.
  • Bit 15:8 gives channelnumber in hexadecimal. Any value greater than the actual number of channels will result in a broadcast on all channels.
0x0000
RX memory 0x1000-0x1FFF RW Memory where all messages received from DRORCs will be stored. One message is stored over 4 addresses:
  • Address ending "00" - 0x0 & RequestID(3:0) & OrbitID(23:16)
  • Address ending "01" - OrbitID(15:0)
  • Address ending "10" - 0x0 BunchCountID(11:0)
  • Address ending "11" - DRORCID(7:0) & ChannelNumber(7:0)
0x0000
RX memory pointer(13:0) 0x2000 R Holds the value where the next message will be written in RX memory. The RX memory pointer will increase by 4 for each message. 0x0000
EventID FIFO count(3:0) 0x2001 R Number of eventIDs stored in the FIFO, excluding the eventID currently being matched, if any. 0x0000
Current EventID(35:32) 0x2002 R The EventID which is currently being matched. 0x0000
Current EventID(31:16) 0x2003 R 0x0000
Current EventID(15:0) 0x2004 R 0x0000
Newest EventID(35:32) 0x2005 R The EventID most recently received from the Trigger system. 0x0000
Newest EventID(31:16) 0x2006 R 0x0000
Newest EventID(15:0) 0x2007 R 0x0000
L1 Trigger Timeout(15:0) 0x2008 RW Time in 10 us resolution the 'busy' will be asserted after an L1A trigger. Note: The busy will not be deasserted if the buffers are full. 0x000A
Busy Condition(15:0) 0x2009 RW Status and control registers concerning the BUSY generation
  • Bit 15 - Busy because TTCrx_ready is low.
  • Bit 14 - Busy because MEB count >= MEB limit
  • Bit 13 - Busy because L1 timeout is active.
  • Bit 12 - Busy because Trigger Receiver Module is busy receiving a sequence.
  • Bit 11 - Busy because the maximum Trigger Burst length has been exceeded.
  • Bit 10 - Busy because two buffers are, or have been used, in new sparse mode
  • Bit 9:8 - Unused
  • Bit 7:4 - Current MEB count.
  • Bit 3:0 - MEB Limit: Limit for the maximum number of MEBs to count before busy will be asserted.
0x0000
Halt FSM matching(0) 0x200A RW If LSB is set to 1 the internal State Machine (FSM) will halt in a wait state and will stop requesting EventIDs from the DRORCs. 0x0001
Force match(0) 0x200B T Writing 0x1 when FSM halt is set, will force the FSM to move on to the next EventID even if it is not matched. Note : FSM must be halted before this has any effect. N/A
Re-Request Timeout(15:0) 0x200C RW Number of clock cycles (25 ns) to wait in between sending requests to the DRORCs. 0x07FF
Current RequestID(3:0) 0x200D R Holds the RequestID the BusyBox is using to request eventIDs from the DRORCs. 0x0000
Retry Count(15:0) 0x200E R Number of times the FSM has sent requests to DRORCs. Will reset to 0 for start of every eventID. 0x0000
Busy time(31:16) 0x2010 R Holds value of counter for number of clock cycles BUSY has been asserted. 0x0000
Busy time(15:0) 0x2011 R 0x0000
RX mem filter(15:0) 0x2012 RW Allows filtering of messages that are stored in RX memory.
  • Bit 7:0 is the pattern that will be matched with the channelnumber of the message.
  • Bit 15:8 allows enableing matching of individual bits 7-0.
0x0000
Number of Channels 0x2014 R Number of channels (in hexadecimal) the firmware includes. This is a generic set at compile-time. N/A
Firmware Revision 0x2015 R Firmware revision in hexadecimal. Holds the revision number of the source in SVN that this FW was compiled from. Current : 54 0x0036
Stresstest Enable(0) 0x2016 RW Duplicates input on channel 0 to all other channels. Used for testing the device with all channels enabled when only one physical DRORC is available. 0x0000
Burst Size(5:0) 0x2017 RW The maximum burst size. A value of 0 disables the Burst Interlock feature. Maximum value is 63. 0x0000
Burst Interlock Leak Time(15:0) 0x2018 RW Leak time for the Burst Interlock "leaky bucket" defined in steps of 10 us. Maximum leak time is 655.4 ms. 0x0000
Trigger Mode(2:0) 0x2019 RW Control registers concerning the BUSY/trigger mode
  • Bit 2 - Not used
  • Bit 1 - New sparse mode enabled
  • Bit 0 - Not used
0x0000
Current Trigger Event Info(12:0) 0x2050 R Holds the Event Info for current eventID as reported by the TRM. See TRM registers for bitmapping. 0x0000
Current Trigger Event Error(24:16) 0x2051 R Holds the Event Error for current eventID as reported by the TRM. See TRM registers for bitmapping. 0x0000
Current Trigger Event Error(15:0) 0x2052 R Holds the Event Error for current eventID as reported by the TRM. See TRM registers for bitmapping. 0x0000
Newest Trigger Event Info(12:0) 0x2054 R Holds the Event Info for newest eventID as reported by the TRM. See TRM registers for bitmapping. 0x0000
Newest Trigger Event Error(24:16) 0x2055 R Holds the Event Error for newest eventID as reported by the TRM. See TRM registers for bitmapping. 0x0000
Newest Trigger Event Error(15:0) 0x2056 R Holds the Event Error for newest eventID as reported by the TRM. See TRM registers for bitmapping. 0x0000
Channel Registers 0x21XX RW 'XX' in the address gives the channelnumber in hexadecimal.
  • Bit 0 is enable(1)/disable(0)
  • Bit 1 indicates that the current EventID has been matched on this channel.
0x0001


Trigger Receiver Module Status and Control Registers
Name Address Mode Bit slice Description
Control 0x3000 RW [15:13] Unused
RW [12] Trigger Input Mask Enable. Default=0
RW [11] L1a message mask. Default=1
RW [10] L2 Timeout FIFO storage mask. Default=1
RW [9] L2r FIFO storage mask. Default=1
RW [8] L2a FIFO storage mask. Default=1
RW [7:4] Unused
RW [3] L0 support. Default=1
RW [2] Unused
RW [1] Disable_error_masking. Default=0
RW [0] Serial B channel on/off. Default=1
Control 0x3001 R [15:8] Trigger Receiver Version. Default=0x16
R [7:4] CDH version. Default=0x2
R [3] Not used
R [2] Busy (receiving sequence) -
R [1] Run Active -
R [0] Bunch_counter overflow -
Module Reset 0x3002 T N/A Reset Module
Reset Counters 0x3008 T N/A Write to this registers will reset the counters in the module
Issue Testmode 0x300A T N/A Debug: Issues testmode sequence. Note that serialB channel input MUST be disabled when using this feature.
L1_Latency 0x300C RW [15:12] Uncertainty region +- N. default value 0x2 (50 ns)
RW [11:0] Latency from L0 to L1. default value 0x0D4 (5.3 us)
L2_Latency MAX 0x300E RW [15:0] Max Latency from BC0 to L2. default value 0x4E20 (500 us)
L2_Latency MIN 0x300F RW [15:0] Min Latency from BC0 to L2. default value 0x0C80 (80 us)
L1_msg_latency MAX 0x3014 RW [15:0] Max Latency from BC0 to L1 msg. default value 0x0028 (1 us)
L1_msg_latency MIN 0x3015 RW [15:0] Min Latency from BC0 to L1 msg. default value 0x0F8 (6.2 us)
Pre_pulse_counter 0x3016 R [15:0] Number of decoded pre-pulses.
BCID_Local 0x3018 R [11:0] Number of bunchcrossings at arrival of L1 trigger.
L0_counter 0x301A R [15:0] Number of L0 triggers
L1_counter 0x301C R [15:0] Number of L1 triggers
L1_msg_counter 0x301E R [15:0] Number of successfully decoded L1 messages
L2a_counter 0x3020 R [15:0] Number of successfully decoded L2a messages
L2r_counter 0x3022 R [15:0] Number of successfully decoded L2r messages
Bunchcounter 0x3026 R [11:0] Debug: Number of bunchcrossings
SingleHammingErrorCnt 0x302C R [15:0] Number of single bit hamming errors
DoubleHammingErrorCnt 0x302D R [15:0] Number of double bit hamming errors
MsgDecodingErrorCnt 0x302E R [15:0] Number of message decoding errors
SeqTimoutErrorCnt 0x302F R [15:0] Number of errors related to sequence and timeouts.
Buffered_events 0x3040 R [4:0] Number of events stored in the FIFO.
DAQ_Header01 0x3042 R [15:0] Latest received DAQ Header 1 [15:0]
DAQ_Header01 0x3043 R [15:0] Latest received DAQ Header 1 [31:16]
DAQ_Header02 0x3044 R [15:0] Latest received DAQ Header 2 [15:0]
DAQ_Header02 0x3045 R [15:0] Latest received DAQ Header 2 [31:16]
DAQ_Header03 0x3046 R [15:0] Latest received DAQ Header 3 [15:0]
DAQ_Header03 0x3047 R [15:0] Latest received DAQ Header 3 [31:16]
DAQ_Header04 0x3048 R [15:0] Latest received DAQ Header 4 [15:0]
DAQ_Header04 0x3049 R [15:0] Latest received DAQ Header 4 [31:16]
DAQ_Header05 0x304a R [15:0] Latest received DAQ Header 5 [15:0]
DAQ_Header05 0x304b R [15:0] Latest received DAQ Header 5 [31:16]
DAQ_Header06 0x304c R [15:0] Latest received DAQ Header 6 [15:0]
DAQ_Header06 0x304d R [15:0] Latest received DAQ Header 6 [31:16]
DAQ_Header07 0x304e R [15:0] Latest received DAQ Header 7 [15:0]
DAQ_Header07 0x304f R [15:0] Latest received DAQ Header 7 [31:16]
Event_info 0x3050 R [12:0] Latest Received Event information:
R [12] Include payload
R [11] Event has L2 Accept trigger
R [10] Event has L2 Reject trigger
R [9] Calibration trigger event
R [8] Software trigger event
R [4:7] Calibration/SW trigger type (= RoC)
R [3] NA(=‘0’)
R [2] NA(=‘0’)
R [1] Region of Interest announced (=ESR)
R [0] NA(=’0’)
Event_error 0x3052 R [15:0] Latest Received Event error conditions:
R [15] L1 message arrives outside legal timeslot
R [14] Missing L1
R [13] Boundary L1
R [12] Spurious L1
R [11] Missing L0
R [10] Spurious L0
R [9] TTCrx Address Error (not X”0003”)
R [8] NA (= ‘0’)
R [7] Incomplete L2a Message
R [6] Incomplete L1 Message
R [5] Unknown Message Address Received
R [4] Double Bit Hamming Error Broadcast.
R [3] Single Bit Hamming Error Broadcast.
R [2] Double Bit Hamming Error Individually Addr.
R [1] Single Bit Hamming Error Individually Addr.
R [0] Serial B Stop Bit Error
Event_error 0x3053 R [8:0] Latest Received Event error conditions:
R [8] NA (= ‘0’)
R [7] L2 message content error
R [6] L1 message content error
R [5] Prepulse error (=0; possible future use)
R [4] NA (= ‘0’)
R [3] NA (= ‘0’)
R [2] L2 message missing/timeout
R [1] L2 message arrives outside legal timeslot
R [0] L1 message missing/timeout