How to Configure Which Readout Cards Report Data

From MCEWiki
Revision as of 14:46, 30 August 2016 by Dvw (talk | contribs)
  • As of Clock Card firmware Rev. 4.0.a+, 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 0x3C  //power-on default = 0x3C
  • The parameter to pass with the command is broken down into the following bits:
    • 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.
wb cc rcs_to_report_data 36     //36 = 0x24 = 0b00100100
  • The command applies only to Readout Cards and only for data taking (ret_dat) commands. The rcs_to_report_data 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. This feature is useful if data runs are interleaved with normal WB/RB commands.
  • The rcs_to_report_data bits are also 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 this information 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.
  • For more information on the new commands listed below, MCE Commands