15{
16
18
19 if (!instance) {
21
22
23
28 instance->
armTest[0] = 0x00000010;
29 instance->
armTest[1] = 0x00000014;
30 instance->
armTest[2] = 0x00000018;
31 instance->
armTest[3] = 0x0000001C;
45
46
86
89
102
115
125
138
148
149
159
172
182
183
184
193
206
219
232
245
258
269 instance->
p_window[10] = 0x800001A8;
270 instance->
p_window[11] = 0x800001AC;
271
284
297
310
321 instance->
d_window[10] = 0x800002A8;
322 instance->
d_window[11] = 0x800002AC;
323
336
349
372 instance->
c_window[10] = 0x800003A8;
373 instance->
c_window[11] = 0x800003AC;
374
410
413
416
429
442
455
468
481
494
507
508
509
510 instance->
fNamed[
"armStatus"] =Register( 0x00000000, 0xFFFFFFFF, 0x00000000, 1 );
511 instance->
fNamed[
"armError"] =Register( 0x00000004, 0xFFFFFFFF, 0x00000000, 1 );
512 instance->
fNamed[
"armCommand"] =Register( 0x00000008, 0xFFFFFFFF, 0xFFFFFFFF, 1 );
513 instance->
fNamed[
"armVersion"] =Register( 0x0000000C, 0xFFFFFFFF, 0x00000000, 1 );
514 instance->
fNamed[
"armTest"] =Register( 0x00000010, 0xFFFFFFFF, 0xFFFFFFFF, 4 );
515 instance->
fNamed[
"armRxAddress"] =Register( 0x00000020, 0xFFFFFFFF, 0x00000000, 1 );
516 instance->
fNamed[
"armRxCommand"] =Register( 0x00000024, 0xFFFFFFFF, 0x00000000, 1 );
517 instance->
fNamed[
"armRxSize"] =Register( 0x00000028, 0xFFFFFFFF, 0x00000000, 1 );
518 instance->
fNamed[
"armRxStatus"] =Register( 0x0000002C, 0xFFFFFFFF, 0x00000000, 1 );
519 instance->
fNamed[
"armTxAddress"] =Register( 0x00000030, 0xFFFFFFFF, 0x00000000, 1 );
520 instance->
fNamed[
"armTxCommand"] =Register( 0x00000034, 0xFFFFFFFF, 0x00000000, 1 );
521 instance->
fNamed[
"armTxSize"] =Register( 0x00000038, 0xFFFFFFFF, 0x00000000, 1 );
522 instance->
fNamed[
"armTxStatus"] =Register( 0x0000003C, 0xFFFFFFFF, 0x00000000, 1 );
523 instance->
fNamed[
"armPackets"] =Register( 0x00000040, 0xFFFFFFFF, 0x00000000, 1 );
524 instance->
fNamed[
"armOperMode"] =Register( 0x00000044, 0xFFFFFFFF, 0x00000000, 1 );
525 instance->
fNamed[
"armOptions"] =Register( 0x00000048, 0xFFFFFFFF, 0x00000000, 1 );
526 instance->
fNamed[
"armModemStatus"] =Register( 0x0000004C, 0xFFFFFFFF, 0x00000000, 1 );
527 instance->
fNamed[
"PurgeDDR"] =Register( 0x00000300, 0x00000001, 0x00000001, 1 );
528 instance->
fNamed[
"zynqTest"] =Register( 0x40000000, 0xFFFFFFFF, 0x00000000, 6 );
529 instance->
fNamed[
"eventDataInterfaceSelect"]=Register( 0x40000020, 0xFFFFFFFF, 0x00000001, 1 );
530 instance->
fNamed[
"fakeNumEvents"] =Register( 0x40000024, 0xFFFFFFFF, 0xFFFFFFFF, 1 );
531 instance->
fNamed[
"fakeEventSize"] =Register( 0x40000028, 0xFFFFFFFF, 0xFFFFFFFF, 1 );
532 instance->
fNamed[
"fakeBaseline"] =Register( 0x4000002C, 0xFFFFFFFF, 0xFFFFFFFF, 1 );
533 instance->
fNamed[
"fakePeakSum"] =Register( 0x40000030, 0xFFFFFFFF, 0xFFFFFFFF, 1 );
534 instance->
fNamed[
"fakePrerise"] =Register( 0x40000034, 0xFFFFFFFF, 0xFFFFFFFF, 1 );
535 instance->
fNamed[
"timestamp"] =Register( 0x40000038, 0xFFFFFFFF, 0x00000000, 2 );
536 instance->
fNamed[
"codeErrCounts"] =Register( 0x40000100, 0xFFFFFFFF, 0x00000000, 5 );
537 instance->
fNamed[
"dispErrCounts"] =Register( 0x40000120, 0xFFFFFFFF, 0x00000000, 5 );
538 instance->
fNamed[
"link_rx_status"] =Register( 0x40000140, 0xFFFFFFFF, 0x00000000, 1 );
539 instance->
fNamed[
"eventDataControl"] =Register( 0x40000144, 0xFFFFFFFF, 0x0033001F, 1 );
540 instance->
fNamed[
"eventDataPhaseControl"] =Register( 0x40000148, 0x00000000, 0x00000003, 1 );
541 instance->
fNamed[
"eventDataPhaseStatus"] =Register( 0x4000014C, 0xFFFFFFFF, 0x00000000, 1 );
542 instance->
fNamed[
"c2c_master_status"] =Register( 0x40000150, 0xFFFFFFFF, 0x00000000, 1 );
543 instance->
fNamed[
"c2c_control"] =Register( 0x40000154, 0xFFFFFFFF, 0x00000007, 1 );
544 instance->
fNamed[
"c2c_master_intr_control"] =Register( 0x40000158, 0xFFFFFFFF, 0x0000000F, 1 );
545 instance->
fNamed[
"dspStatus"] =Register( 0x40000160, 0xFFFFFFFF, 0x00000000, 1 );
546 instance->
fNamed[
"comm_clock_status"] =Register( 0x40000170, 0xFFFFFFFF, 0x00000000, 1 );
547 instance->
fNamed[
"comm_clock_control"] =Register( 0x40000174, 0xFFFFFFFF, 0x00000001, 1 );
548 instance->
fNamed[
"comm_led_config"] =Register( 0x40000180, 0xFFFFFFFF, 0x00000003, 1 );
549 instance->
fNamed[
"comm_led_input"] =Register( 0x40000184, 0xFFFFFFFF, 0xFFFFFFFF, 1 );
550 instance->
fNamed[
"eventDataStatus"] =Register( 0x40000190, 0xFFFFFFFF, 0x00000000, 1 );
551 instance->
fNamed[
"qi_dac_control"] =Register( 0x40000200, 0x00000000, 0x00000001, 1 );
552 instance->
fNamed[
"qi_dac_config"] =Register( 0x40000204, 0x0003FFFF, 0x0003FFFF, 1 );
553 instance->
fNamed[
"bias_control"] =Register( 0x40000300, 0x00000000, 0x00000001, 1 );
554 instance->
fNamed[
"bias_status"] =Register( 0x40000304, 0x00000FFF, 0x00000000, 1 );
555 instance->
fNamed[
"bias_config"] =Register( 0x40000340, 0xFFFFFFFF, 0x00440FFF, 12);
556 instance->
fNamed[
"bias_readback"] =Register( 0x40000380, 0xFFFFFFFF, 0x00000000, 12);
557 instance->
fNamed[
"vmon_config"] =Register( 0x40000400, 0x00FFFFFF, 0x00FFFFFF, 1 );
558 instance->
fNamed[
"vmon_select"] =Register( 0x40000404, 0xFFFFFFFF, 0xFFFFFFFF, 1 );
559 instance->
fNamed[
"vmon_gpio"] =Register( 0x40000408, 0x0000FFFF, 0x0000FFFF, 1 );
560 instance->
fNamed[
"vmon_config_readback"] =Register( 0x40000410, 0x00FFFFFF, 0x00000000, 1 );
561 instance->
fNamed[
"vmon_select_readback"] =Register( 0x40000414, 0xFFFFFFFF, 0x00000000, 1 );
562 instance->
fNamed[
"vmon_gpio_readback"] =Register( 0x40000418, 0x0000FFFF, 0x00000000, 1 );
563 instance->
fNamed[
"vmon_id_readback"] =Register( 0x4000041C, 0x000000FF, 0x00000000, 1 );
564 instance->
fNamed[
"vmon_control"] =Register( 0x40000420, 0x00010100, 0x00010001, 1 );
565 instance->
fNamed[
"vmon_status"] =Register( 0x40000424, 0xFFFFFFFF, 0x00000000, 1 );
566 instance->
fNamed[
"vmon_bias"] =Register( 0x40000440, 0xFFFFFFFF, 0x00000000, 12);
567 instance->
fNamed[
"vmon_value"] =Register( 0x40000480, 0xFFFFFFFF, 0x00000000, 8 );
568 instance->
fNamed[
"imon_config"] =Register( 0x40000500, 0x00FFFFFF, 0x00FFFFFF, 1 );
569 instance->
fNamed[
"imon_select"] =Register( 0x40000504, 0xFFFFFFFF, 0xFFFFFFFF, 1 );
570 instance->
fNamed[
"imon_gpio"] =Register( 0x40000508, 0x0000FFFF, 0x0000FFFF, 1 );
571 instance->
fNamed[
"imon_config_readback"] =Register( 0x40000510, 0x00FFFFFF, 0x00000000, 1 );
572 instance->
fNamed[
"imon_select_readback"] =Register( 0x40000514, 0xFFFFFFFF, 0x00000000, 1 );
573 instance->
fNamed[
"imon_gpio_readback"] =Register( 0x40000518, 0x0000FFFF, 0x00000000, 1 );
574 instance->
fNamed[
"imon_id_readback"] =Register( 0x4000051C, 0x000000FF, 0x00000000, 1 );
575 instance->
fNamed[
"imon_control"] =Register( 0x40000520, 0x00010100, 0x00010001, 1 );
576 instance->
fNamed[
"imon_status"] =Register( 0x40000524, 0xFFFFFFFF, 0x00000000, 1 );
577 instance->
fNamed[
"imon_bias"] =Register( 0x40000540, 0xFFFFFFFF, 0x00000000, 12);
578 instance->
fNamed[
"imon_value"] =Register( 0x40000580, 0xFFFFFFFF, 0x00000000, 8 );
579 instance->
fNamed[
"board_id"] =Register( 0x80000000, 0xFFFFFFFF, 0x00000000, 1 );
580 instance->
fNamed[
"fifo_control"] =Register( 0x80000004, 0xFFFFFFFF, 0x00000000, 1 );
581 instance->
fNamed[
"dp_fpga_fw_build"] =Register( 0x80000010, 0xFFFFFFFF, 0x00000000, 1 );
582 instance->
fNamed[
"calib_build"] =Register( 0x80000014, 0x0FFFFFFF, 0x08000000, 1 );
583 instance->
fNamed[
"dp_clock_status"] =Register( 0x80000020, 0xFFFFFFFF, 0x00000000, 1 );
584 instance->
fNamed[
"module_id"] =Register( 0x80000024, 0x00000FFF, 0x00000FFF, 1 );
585 instance->
fNamed[
"c2c_slave_status"] =Register( 0x80000030, 0xFFFFFFFF, 0x00000000, 1 );
586 instance->
fNamed[
"c2c_slave_intr_control"] =Register( 0x80000034, 0xFFFFFFFF, 0x0000000F, 1 );
587 instance->
fNamed[
"channel_control"] =Register( 0x80000040, 0xFFFFFFFF, 0xFFFFFFFF, 12);
588 instance->
fNamed[
"led_threshold"] =Register( 0x80000080, 0x00FFFFFF, 0x00FFFFFF, 12);
589 instance->
fNamed[
"cfd_parameters"] =Register( 0x800000C0, 0x00001FFF, 0x00001FFF, 12);
590 instance->
fNamed[
"readout_pretrigger"] =Register( 0x80000100, 0x000007FF, 0x000007FF, 12);
591 instance->
fNamed[
"readout_window"] =Register( 0x80000140, 0x000007FE, 0x000007FE, 12);
592 instance->
fNamed[
"p_window"] =Register( 0x80000180, 0x000003FF, 0x000003FF, 12);
593 instance->
fNamed[
"i2_window"] =Register( 0x800001C0, 0x000003FF, 0x000003FF, 12);
594 instance->
fNamed[
"m1_window"] =Register( 0x80000200, 0x000003FF, 0x000003FF, 12);
595 instance->
fNamed[
"m2_window"] =Register( 0x80000240, 0x0000007F, 0x0000007F, 12);
596 instance->
fNamed[
"d_window"] =Register( 0x80000280, 0x0000007F, 0x0000007F, 12);
597 instance->
fNamed[
"i1_window"] =Register( 0x800002C0, 0x000003FF, 0x000003FF, 12);
598 instance->
fNamed[
"disc_width"] =Register( 0x80000300, 0x0000FFFF, 0x0000FFFF, 12);
599 instance->
fNamed[
"baseline_start"] =Register( 0x80000340, 0x00003FFF, 0x00003FFF, 12);
600 instance->
fNamed[
"c_window"] =Register( 0x80000380, 0x00003FFF, 0x00003FFF, 12);
601 instance->
fNamed[
"trigger_input_delay"] =Register( 0x80000400, 0x0000FFFF, 0x0000FFFF, 1 );
602 instance->
fNamed[
"gpio_output_width"] =Register( 0x80000404, 0x0000FFFF, 0x0000FFFF, 1 );
603 instance->
fNamed[
"front_panel_config"] =Register( 0x80000408, 0x00730333, 0x00730333, 1 );
604 instance->
fNamed[
"channel_pulsed_control"] =Register( 0x8000040C, 0x00000000, 0xFFFFFFFF, 1 );
605 instance->
fNamed[
"dsp_led_config"] =Register( 0x80000410, 0xFFFFFFFF, 0x00000003, 1 );
606 instance->
fNamed[
"dsp_led_input"] =Register( 0x80000414, 0xFFFFFFFF, 0xFFFFFFFF, 1 );
607 instance->
fNamed[
"baseline_delay"] =Register( 0x80000418, 0x000000FF, 0x000000FF, 1 );
608 instance->
fNamed[
"diag_channel_input"] =Register( 0x8000041C, 0xFFFFFFFF, 0xFFFFFFFF, 1 );
609 instance->
fNamed[
"event_data_control"] =Register( 0x80000424, 0x00020001, 0x00020001, 1 );
610 instance->
fNamed[
"adc_config"] =Register( 0x80000428, 0xFFFFFFFF, 0xFFFFFFFF, 1 );
611 instance->
fNamed[
"adc_config_load"] =Register( 0x8000042C, 0x00000000, 0x00000001, 1 );
612 instance->
fNamed[
"qi_config"] =Register( 0x80000430, 0x0FFF1F11, 0x0FFF1F11, 1 );
613 instance->
fNamed[
"qi_delay"] =Register( 0x80000434, 0x0000007F, 0x0000007F, 1 );
614 instance->
fNamed[
"qi_pulse_width"] =Register( 0x80000438, 0x0000FFFF, 0x0000FFFF, 1 );
615 instance->
fNamed[
"qi_pulsed"] =Register( 0x8000043C, 0x00000000, 0x00030001, 1 );
616 instance->
fNamed[
"external_gate_width"] =Register( 0x80000440, 0x0000FFFF, 0x0000FFFF, 1 );
617 instance->
fNamed[
"pdts_cmd_control"] =Register( 0x80000460, 0xFFFFFFFF, 0xFFFFFFFF, 3 );
618 instance->
fNamed[
"lat_timestamp_lsb"] =Register( 0x80000484, 0xFFFFFFFF, 0x00000000, 1 );
619 instance->
fNamed[
"lat_timestamp_msb"] =Register( 0x80000488, 0x0000FFFF, 0x00000000, 1 );
620 instance->
fNamed[
"live_timestamp_lsb"] =Register( 0x8000048C, 0xFFFFFFFF, 0x00000000, 1 );
621 instance->
fNamed[
"live_timestamp_msb"] =Register( 0x80000490, 0x0000FFFF, 0x00000000, 1 );
622 instance->
fNamed[
"sync_period"] =Register( 0x80000494, 0xFFFFFFFF, 0x00000000, 1 );
623 instance->
fNamed[
"sync_delay"] =Register( 0x80000498, 0xFFFFFFFF, 0x00000000, 1 );
624 instance->
fNamed[
"sync_count"] =Register( 0x8000049C, 0xFFFFFFFF, 0x00000000, 1 );
625 instance->
fNamed[
"pdts_control"] =Register( 0x800004C0, 0xFFFFFFFF, 0xFFFFFFFF, 1 );
626 instance->
fNamed[
"pdts_status"] =Register( 0x800004C4, 0x00000000, 0xFFFFFFFF, 1 );
627 instance->
fNamed[
"pdts_ts_preset"] =Register( 0x800004C8, 0x00000000, 0xFFFFFFFF, 2 );
628 instance->
fNamed[
"master_logic_control"] =Register( 0x80000500, 0xFFFFFFFF, 0x00000173, 1 );
629 instance->
fNamed[
"master_logic_status"] =Register( 0x80000504, 0x00000001, 0x00000000, 1 );
630 instance->
fNamed[
"overflow_status"] =Register( 0x80000508, 0xFFFFFFFF, 0x00000000, 1 );
631 instance->
fNamed[
"phase_value"] =Register( 0x8000050C, 0xFFFFFFFF, 0x00000000, 1 );
632 instance->
fNamed[
"link_tx_status"] =Register( 0x80000510, 0xFFFFFFFF, 0x00000000, 1 );
633 instance->
fNamed[
"dsp_clock_control"] =Register( 0x80000520, 0x00000713, 0x00000713, 1 );
634 instance->
fNamed[
"dsp_clock_phase_control"] =Register( 0x80000524, 0x00000000, 0x00000007, 1 );
635 instance->
fNamed[
"code_revision"] =Register( 0x80000600, 0xFFFFFFFF, 0x00000000, 1 );
636 instance->
fNamed[
"code_date"] =Register( 0x80000604, 0xFFFFFFFF, 0x00000000, 1 );
637 instance->
fNamed[
"dropped_event_count"] =Register( 0x80000700, 0xFFFFFFFF, 0x00000000, 12);
638 instance->
fNamed[
"accepted_event_count"] =Register( 0x80000740, 0xFFFFFFFF, 0x00000000, 12);
639 instance->
fNamed[
"ahit_count"] =Register( 0x80000780, 0xFFFFFFFF, 0x00000000, 12);
640 instance->
fNamed[
"disc_count"] =Register( 0x800007C0, 0xFFFFFFFF, 0x00000000, 12);
641 instance->
fNamed[
"idelay_count"] =Register( 0x80000800, 0xFFFFFFFF, 0x00000000, 12);
642 instance->
fNamed[
"adc_data_monitor"] =Register( 0x80000840, 0x0000FFFF, 0x00000000, 12);
643 instance->
fNamed[
"adc_status"] =Register( 0x80000880, 0xFFFFFFFF, 0x00000000, 12);
644
645 }
646 return *instance;
647}
unsigned int c2c_slave_intr_control
unsigned int d_window[12]
unsigned int baseline_start[12]
unsigned int ahit_count[12]
unsigned int imon_select_readback
unsigned int qi_dac_control
unsigned int eventDataInterfaceSelect
unsigned int front_panel_config
unsigned int i2_window[12]
unsigned int dp_clock_status
unsigned int vmon_bias[12]
unsigned int armModemStatus
unsigned int master_logic_control
unsigned int live_timestamp_msb
unsigned int dsp_clock_control
unsigned int eventDataControl
unsigned int imon_control
unsigned int vmon_value[9]
unsigned int disc_count[12]
unsigned int pdts_control
unsigned int vmon_control
unsigned int lat_timestamp_lsb
unsigned int master_logic_status
unsigned int armTxAddress
unsigned int vmon_config_readback
unsigned int c_window[12]
unsigned int dsp_clock_phase_control
unsigned int fakeEventSize
unsigned int comm_led_config
unsigned int armTxCommand
unsigned int codeErrCounts[5]
unsigned int dsp_led_config
unsigned int imon_value[9]
unsigned int pdts_cmd_control[3]
unsigned int c2c_master_intr_control
unsigned int armRxCommand
unsigned int fakeBaseline
unsigned int vmon_gpio_readback
unsigned int channel_control[12]
unsigned int imon_id_readback
unsigned int qi_pulse_width
unsigned int c2c_master_status
unsigned int event_data_control
unsigned int accepted_event_count[12]
unsigned int bias_control
std::map< std::string, Register > fNamed
unsigned int m2_window[12]
unsigned int i1_window[12]
unsigned int armRxAddress
unsigned int code_revision
unsigned int c2c_slave_status
unsigned int dsp_led_input
unsigned int adc_config_load
unsigned int trigger_input_delay
unsigned int timestamp[2]
unsigned int eventDataPhaseControl
unsigned int lat_timestamp_msb
unsigned int qi_dac_config
unsigned int external_gate_width
unsigned int cfd_parameters[12]
unsigned int dispErrCounts[5]
unsigned int comm_clock_control
unsigned int comm_led_input
unsigned int bias_readback[12]
unsigned int diag_channel_input
unsigned int comm_clock_status
unsigned int imon_bias[12]
unsigned int adc_status[12]
unsigned int link_rx_status
unsigned int eventDataStatus
unsigned int led_threshold[12]
unsigned int p_window[12]
unsigned int adc_data_monitor[12]
unsigned int gpio_output_width
unsigned int link_tx_status
unsigned int vmon_id_readback
unsigned int idelay_count[12]
unsigned int channel_pulsed_control
unsigned int vmon_select_readback
unsigned int eventDataPhaseStatus
unsigned int readout_pretrigger[12]
unsigned int overflow_status
unsigned int dp_fpga_fw_build
unsigned int pdts_ts_preset[2]
unsigned int disc_width[12]
unsigned int bias_config[12]
unsigned int fakeNumEvents
unsigned int imon_gpio_readback
unsigned int imon_config_readback
unsigned int fifo_control
unsigned int baseline_delay
unsigned int readout_window[12]
unsigned int m1_window[12]
unsigned int dropped_event_count[12]
unsigned int live_timestamp_lsb