How to Configure Which Readout Cards Report Data

From MCEWiki
Revision as of 15:07, 15 June 2010 by Bburger (talk | contribs)
  • As of Clock Card firmware Rev. 4.0.a and 5.0.0+, the Clock Card has the ability to return data from any permutation of Readout Cards. In other words, the set of Readout Cards that return data from a "go rcs ret_dat" is now configurable. A register can be commanded to specify any combination of Readout Cards.
  • In 4.0.9-: "go rcs ret_dat" would return data from 4 readout cards.
  • In 4.0.a+: to tell the CC to return data from all 4 readout cards, issue:
 wb cc rcs_to_report_data 0x1C  //power-on default = 0x1C
  • The parameter to pass with the command is broken down into 4 bits:
    • Bit 9: --
    • Bit 8: --
    • Bit 7: --
    • Bit 6: --
    • Bit 5: Readout Card 1
    • Bit 4: Readout Card 2
    • Bit 3: Readout Card 3
    • Bit 2: Readout Card 4
    • Bit 1: --
    • Bit 0: --
  • For example, the follwing command directs the CC to return data from RC1 and RC4. In the example below, 36 = 0b0000100100.
wb cc rcs_to_report_data 36  
  • It applies only to Readout Cards, and only for data taking (ret_dat) commands. It's register sets which Readout Cards return data during a data run. This command allows the selective return of data without affecting which cards respond to all other commands, which is useful if a data run fails.
  • The rcs_to_report_data bits are encapsulated in the header of every data packet returned to the PC. They are stored at word index 0, bits 15:6. The inclusion of these two fields allows software to do processing on binary data files without having to read the .run file associated with it.
  • The data-size field of the data packet will reflect the actual size of the data packet being returned. The data size of the packet is determined using the following calculation:
data_size = num_rcs_returning_data * num_rows_reported * num_cols_reported
  • The full packet size of a data packet (returned in word 4 of a data packet) is thus:
packet_size = data_size + header_size(=43) + checksum_size(=1)
  • For more information on the data header, see the document discussing MCE File Formats.