Difference between revisions of "FA125 Data Format June 23, 2015"

From GlueXWiki
Jump to: navigation, search
(Created page with "= Location and Time = '''Room:''' CC L207 ?? '''Time:''' 2pm. = Remote Connection = (if problems, call phone in conference room: 757-269-6460 might not be the correct numbe...")
 
m (Text replacement - "http://argus.phys.uregina.ca/cgi-bin/private" to "https://halldweb.jlab.org/doc-private")
 
(39 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
= Location and Time =
 
= Location and Time =
  
'''Room:''' CC L207 ??
+
'''Room:''' CC F326
  
 
'''Time:''' 2pm.
 
'''Time:''' 2pm.
  
 
= Remote Connection =
 
= Remote Connection =
 +
 +
<div class="toccolours mw-collapsible mw-collapsed">
 +
You can connect using [https://bluejeans.com/589693655 BlueJeans] using the meeting number 589 693 655 . &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (Click "Expand" to the right for more details -->):
 +
 +
<div class="mw-collapsible-content">
 +
 
(if problems, call phone in conference room: 757-269-6460 might not be the correct number)
 
(if problems, call phone in conference room: 757-269-6460 might not be the correct number)
 +
 
# To join via Polycom room system go to the IP Address: 199.48.152.152 ([http://bjn.vc bjn.vc]) and enter the meeting ID: 589693655.
 
# To join via Polycom room system go to the IP Address: 199.48.152.152 ([http://bjn.vc bjn.vc]) and enter the meeting ID: 589693655.
 
# To join via a Web Browser, go to the page [https://bluejeans.com/589693655] https://bluejeans.com/589693655.
 
# To join via a Web Browser, go to the page [https://bluejeans.com/589693655] https://bluejeans.com/589693655.
Line 22: Line 29:
 
*    You may have to unmute the microphone: #*4
 
*    You may have to unmute the microphone: #*4
 
*    Turn the computer on if needed
 
*    Turn the computer on if needed
 +
 +
</div>
 +
 +
</div>
  
 
= Agenda =
 
= Agenda =
 
* [[FADC_Data_Format_June_9,_2015|Previous meeting (June 9, 2015)]]
 
* [[FADC_Data_Format_June_9,_2015|Previous meeting (June 9, 2015)]]
* Status of FADC125 Firmware
+
* Status of FADC125 Firmware (report from Cody last week is in the minutes)
* Configuration parameters
+
* [[:File:FADC125_DataFormat_v5_06.pdf|Version 5.06, 23 June 2015]]
* Emulation
+
* Need to add NPK for number of peaks
 +
* Need to eliminate unnecessary data modes 
 +
* Parameter PG to describe gap between pedestal sample and threshold crossing (replaces XTHR in user interface)
 +
{| border="0" cellpadding="2"
 +
|+ CDC sample data from many pulses with threshold crossing sample moved to bin 9
 +
|[[Image:cdc_samples_thres120.png|thumb|x80px|hit threshold 120, several peak amplitudes]]
 +
|[[Image:cdc_samples3.png|thumb|x80px|all peak amplitudes, several hit thresholds]]
 +
|}
 +
* Pedestal samples
  
 
== Useful Links ==
 
== Useful Links ==
* [[CDC_algo|Timing algorithm - updated to include latest revisions]]
+
* [[:File:FADC125_DataFormat_v5_06.pdf|Format doc version 5.06, 23 June 2015]]
* [http://argus.phys.uregina.ca/cgi-bin/private/DocDB/ShowDocument?docid=2274 fADC125 Data Format Specification Document] [[:File:FA125_format_v5_01.pdf|Latest version (5.01) in svn, 17 Feb 2015]] [[:File:FA125_format_v5_03.pdf|Even Later version (5.03) in svn, 11 March 2015]]
+
* [[CDC_algo|Timing algorithm wiki page - updated to include latest revisions]]
 +
* [https://halldweb.jlab.org/doc-private/DocDB/ShowDocument?docid=2274 fADC125 Data Format Specification Document in svn (old)]  
 
* [[:File:FADC125_dataformat_250_modes.docx|Data format for 250 modes on fADC125 from Cody, Aug 15 2014]]
 
* [[:File:FADC125_dataformat_250_modes.docx|Data format for 250 modes on fADC125 from Cody, Aug 15 2014]]
 
* [[:File:FADC250_modes_2.docx|FA250 modes 2 from Ed and Hai, Feb 18 2014]]
 
* [[:File:FADC250_modes_2.docx|FA250 modes 2 from Ed and Hai, Feb 18 2014]]
Line 38: Line 58:
 
* [[CDC_readout_requirements|CDC readout needs]] [[CDC_garfield_calcs|Garfield calcs]]
 
* [[CDC_readout_requirements|CDC readout needs]] [[CDC_garfield_calcs|Garfield calcs]]
 
* [[CDC_run_985]] [[CDC_run_970]]
 
* [[CDC_run_985]] [[CDC_run_970]]
 +
* [[:File:FA125_format_v5_03.pdf|Version 5.03, 11 March 2015]]
 +
* [[:File:FA125_format_v5_01.pdf|Ver 5.01 in svn, 17 Feb 2015]]
  
 
=Minutes=
 
=Minutes=
Present: Naomi (CMU), Cody, Elton, David, Beni (JLab)
+
Present: Naomi, Mike (CMU), Beni, Simon, Lubomir (JLab)
 +
 
 +
#Update from Cody last week - he synthesized the CDC combined mode and got some real (eventless) data through his test card using it - headers, trigger time and trailer (he suppressed the event data just to make testing easier in these early stages). This shows that both the new daisy chain and backend architectures work.  It looks like he will have to make separate CDC and FDC versions to get the firmware to fit onto the card. When he gets back he'll talk to Bryan about the driver.
 +
# We need to add a parameter NPK (number of peaks per trigger) to the firmware/driver spec.  Multiple-peak-per-trigger reporting is already in the firmware, but undocumented.  At present the max value for NPK is 512 but to prevent data deluge due to accidental typos we would like to limit this to a smaller number, we picked 8.  The firmware would only record the peaks found in the window.  After the first threshold crossing, the peak search requires a maximum after a minimum; falling below threshold is not required.  Each maxima is identified as the sample before 2 consecutive decreasing samples.
 +
# We should make sure that in the combined data formats, the firmware is reporting the calculated quantities for each peak but including the raw samples only once.  The max window size is 1024.
 +
# The format spec mentions output of samples in the 'pulse window' for the combined format.  This should be the entire trigger window.
 +
# We do not need the raw sample data formats (window or pulse raw data) as the raw samples are included in the combined formats. 
 +
# We do not need the scaler data format.
 +
# We are happy to use the parameter PG to describe gap between pedestal sample and threshold crossing (which replaces XTHR in user interface) and can use plots similar to those above to pick the best value for a given threshold by looking to see where the signals before the pulse diverge, eg for threshold 125, a good value for PG would be 5.  [[File:Cdc_samples3.png|40px]]
 +
# Pedestal samples - Beni found no significant difference between using integer mean pedestal and floating point mean pedestal for subtraction from the integral.  He found some strange effects using different batches of pre-pulse pedestal samples, the mean was lowest at the start of the data window. [[CDC_Pedestal_Studies]]
 +
# Lubomir pointed out that if we integrate from the start of the pulse to a fixed number of samples after the threshold crossing, we don't know how many samples we integrated because the threshold crossing is not output.  We will have to fix this.  [eg by integrating for a fixed number of samples after the start of the pulse, not the threshold crossing]
 +
# The data modes are not listed in the spec and probably should be.
 +
# Naomi will compile a list of suggested maximum values for the config parameters and email them to the group. We need to specify maximum values so that the field widths can be allocated in the firmware and driver.
 +
 
 +
== Proposed field range for configuration parameters ==
 +
 
 +
These are not intended to be restrictive, but to determine how many bits are needed to pass the parameter values from the software library driver into the firmware.
 +
 
  
#Cody is still finding a few signals which do not make timing (ie the signal needs more than one clock cycle to get from one state to the next, the delays can be due to excess logic or routing or both) in the full version of the new firmware, where all the possible output quantities are calculated and then selected for output according to the data format mode in use. More than 80% of the FA125 resources are in use; this is after redoing the daisy-chaining and back-end.
+
{|border="1" cellpadding="5" cellspacing="0" style="text-align:center; "
#However, the code for just one readout format - the CDC combination mode - does make timing.  This needs to have the configuration parameters finalized and Cody will ask Bryan for the readout library so that he can test it (the library supplies the register space for the configuration parameters and the data decoder). Cody asked about doing full crate tests to check the trigger rates, Beni said yes, do this as soon as he can.
+
|Name || Max value || Comments
#Cody will keep working on the full version. If it does not seem likely that this will be successful, the backup plan is to make separate firmware versions for the CDC and FDC.
+
|-style="background:#eef;"
#The timing algorithm has been fully pipelined, with every loop removed.  XTHR_SAMPLE and NSAMPLES can be configurable.  Naomi: we are ok with NSAMPLES constant.
+
| NW || 1024 || I think this is the current maximum
#Naomi: We can remove the tests for overflow and upsampling errors as these can be identified offline.
+
|-style="background:#fff;"
#Naomi has been looking at prototype data to see if XTHR_SAMPLE should be configurable (probably, yes) and if using a mean of a number of samples for the timing pedestal gives better results than a single sample (so far, no, but needs further work).
+
| P1 || 7 || Initial ped window length NP=2**P1 which would be 128 for P1=7
#Naomi mentioned reducing the upsampling factor.  This would not help with synthesis (making timing), but would make the process finish sooner.
+
|-style="background:#eef;"
#Elton mentioned that the FA250 team are planning to revise their firmware and might adopt some similar tactics to the FA125's.
+
| P2 || 7 || Local ped window length NP2=2**P2 which would be 128 for P2=7
#Lubomir asked about the FA125 self-triggering. Cody will look to see how long this would be likely to take to implement.
+
|-style="background:#fff;"
 +
| IE || 1023 || for the CDC we need IE > NW-NP
 +
|-style="background:#eef;"
 +
| NPK || 15 || Lubomir is ok with max of 8; 15 uses the same # bits; can limit this to 8 in software
 +
|-style="background:#fff;"
 +
| H || 511 || Hit threshold
 +
|-style="background:#eef;"
 +
| TH || 511 || High timing threshold
 +
|-style="background:#fff;"
 +
| TL || 63 || Low timing threshold
 +
|-style="background:#eef;"
 +
| IBIT || 7 || Scaling factor for integral is 2**IBIT (using 4 for CDC & 7 uses same # bits)
 +
|-style="background:#fff;"
 +
| ABIT || 3 || Scaling factor for amplitude is 2**ABIT
 +
|-style="background:#eef;"
 +
| PBIT || 3 || Scaling factor for pedestal is 2**PBIT  
 +
|}

Latest revision as of 17:12, 24 February 2017

Location and Time

Room: CC F326

Time: 2pm.

Remote Connection

You can connect using BlueJeans using the meeting number 589 693 655 .       (Click "Expand" to the right for more details -->):

(if problems, call phone in conference room: 757-269-6460 might not be the correct number)

  1. To join via Polycom room system go to the IP Address: 199.48.152.152 (bjn.vc) and enter the meeting ID: 589693655.
  2. To join via a Web Browser, go to the page [1] https://bluejeans.com/589693655.
  3. To join via phone, use one of the following numbers and the Conference ID: 589693655
    • US or Canada: +1 408 740 7256 or
    • US or Canada: +1 888 240 2560

More information on connecting to bluejeans is here

Specific instructions for connecting via polycom:

  • Turn polycom on if necessary
  • With the polycom, place a call at 199.48.152.152
  • Press # to enable the polycom keypad, then enter the meeting id: 589693655 and #
  • You may have to unmute the microphone: #*4
  • Turn the computer on if needed

Agenda

  • Previous meeting (June 9, 2015)
  • Status of FADC125 Firmware (report from Cody last week is in the minutes)
  • Version 5.06, 23 June 2015
  • Need to add NPK for number of peaks
  • Need to eliminate unnecessary data modes
  • Parameter PG to describe gap between pedestal sample and threshold crossing (replaces XTHR in user interface)
CDC sample data from many pulses with threshold crossing sample moved to bin 9
hit threshold 120, several peak amplitudes
all peak amplitudes, several hit thresholds
  • Pedestal samples

Useful Links

Minutes

Present: Naomi, Mike (CMU), Beni, Simon, Lubomir (JLab)

  1. Update from Cody last week - he synthesized the CDC combined mode and got some real (eventless) data through his test card using it - headers, trigger time and trailer (he suppressed the event data just to make testing easier in these early stages). This shows that both the new daisy chain and backend architectures work. It looks like he will have to make separate CDC and FDC versions to get the firmware to fit onto the card. When he gets back he'll talk to Bryan about the driver.
  2. We need to add a parameter NPK (number of peaks per trigger) to the firmware/driver spec. Multiple-peak-per-trigger reporting is already in the firmware, but undocumented. At present the max value for NPK is 512 but to prevent data deluge due to accidental typos we would like to limit this to a smaller number, we picked 8. The firmware would only record the peaks found in the window. After the first threshold crossing, the peak search requires a maximum after a minimum; falling below threshold is not required. Each maxima is identified as the sample before 2 consecutive decreasing samples.
  3. We should make sure that in the combined data formats, the firmware is reporting the calculated quantities for each peak but including the raw samples only once. The max window size is 1024.
  4. The format spec mentions output of samples in the 'pulse window' for the combined format. This should be the entire trigger window.
  5. We do not need the raw sample data formats (window or pulse raw data) as the raw samples are included in the combined formats.
  6. We do not need the scaler data format.
  7. We are happy to use the parameter PG to describe gap between pedestal sample and threshold crossing (which replaces XTHR in user interface) and can use plots similar to those above to pick the best value for a given threshold by looking to see where the signals before the pulse diverge, eg for threshold 125, a good value for PG would be 5. Cdc samples3.png
  8. Pedestal samples - Beni found no significant difference between using integer mean pedestal and floating point mean pedestal for subtraction from the integral. He found some strange effects using different batches of pre-pulse pedestal samples, the mean was lowest at the start of the data window. CDC_Pedestal_Studies
  9. Lubomir pointed out that if we integrate from the start of the pulse to a fixed number of samples after the threshold crossing, we don't know how many samples we integrated because the threshold crossing is not output. We will have to fix this. [eg by integrating for a fixed number of samples after the start of the pulse, not the threshold crossing]
  10. The data modes are not listed in the spec and probably should be.
  11. Naomi will compile a list of suggested maximum values for the config parameters and email them to the group. We need to specify maximum values so that the field widths can be allocated in the firmware and driver.

Proposed field range for configuration parameters

These are not intended to be restrictive, but to determine how many bits are needed to pass the parameter values from the software library driver into the firmware.


Name Max value Comments
NW 1024 I think this is the current maximum
P1 7 Initial ped window length NP=2**P1 which would be 128 for P1=7
P2 7 Local ped window length NP2=2**P2 which would be 128 for P2=7
IE 1023 for the CDC we need IE > NW-NP
NPK 15 Lubomir is ok with max of 8; 15 uses the same # bits; can limit this to 8 in software
H 511 Hit threshold
TH 511 High timing threshold
TL 63 Low timing threshold
IBIT 7 Scaling factor for integral is 2**IBIT (using 4 for CDC & 7 uses same # bits)
ABIT 3 Scaling factor for amplitude is 2**ABIT
PBIT 3 Scaling factor for pedestal is 2**PBIT