Subversion Repositories f9daq

Rev

Blame | Last modification | View Log | RSS feed

  1. #ifndef _SA02_DEF_H
  2. #define _SA02_DEF_H
  3.  
  4. #define FEB_SINGLE
  5. #ifdef CAEN_V1495
  6. // read data access
  7. #  define FEB_DATA_RDY               0x10c4
  8. #  define FEB_DATA_RST               0x101c
  9. //#  define FEB_TPENB                  0x1020
  10. // setup trigger SW or HW
  11. #  define FEB_SEUTRG                   0x1028
  12. #  define FEB_SWTRG                   0x1020
  13. #  ifdef FEB_SINGLE
  14. #    define FEB_DATA_START             0x1030
  15. #    define FEB_DATA_STOP              0x10c0
  16. #   else /* FEB_SINGLE */
  17. #    define FEB_DATA_START             0x1100
  18. #    define FEB_DATA_STOP              0x1340
  19. #  endif /* FEB_SINGLE */
  20. #  define FEB_DATA_INC               0x0004
  21. #  define FEB_BLTDATA_START 0x0030
  22. #  define FEB_BLTDATA_STOP   0x00c0
  23. #  define FEB_SREG                   0x10c0
  24. #  ifdef FEB_SINGLE
  25. #    define FEB_SREG0                   FEB_SREG
  26. #    define FEB_SREG1                   FEB_SREG
  27. #    define FEB_SREG2                   FEB_SREG
  28. #    define FEB_SREG3                   FEB_SREG
  29. #   else /* FEB_SINGLE */  // parallel readout
  30. #    define FEB_SREG0                   0x10d4
  31. #    define FEB_SREG1                   0x10d8
  32. #    define FEB_SREG2                   0x10dc
  33. #    define FEB_SREG3                   0x10e0
  34. #  endif /* FEB_SINGLE */
  35. // write accesss
  36. #   define FEB_REGH                   0x1010
  37. #   define FEB_REGL                   0x1014
  38. #   define FEB_EXEC                   0x1018
  39. #endif /* CAEN_V1495 */
  40.  
  41. #ifdef BELLEPTS
  42.  
  43.  
  44.  
  45. #  define FEB_BLTDATA_START  FEB_DATA_START  
  46. #  define FEB_BLTDATA_STOP   FEB_DATA_STOP
  47.  
  48. // data access
  49. #define FEB_DATA                 0x0100
  50. #define FEB_DATA_INC             0x0100
  51.  
  52. #define  FEB_CHADDR                      0x0104
  53. #define  FEB_CNTR                            0x0108
  54. // write accesss
  55. #define FEB_DATAOUT0             0x010C
  56. #define FEB_DATAOUT1             0x0110
  57. // read access
  58. #define FEB_DATAIN0              0x0114
  59. #define FEB_DATAIN1              0x0118
  60.  
  61.  
  62. #define FEB_DATA_RST             0x0500
  63. #define FEB_DATA_RDY             0x0504
  64. #define FEB_DAQMODE              0x0508
  65. #define FEB_SWTRG                0x050C //  sw trigger
  66. #define FEB_SELTRG               0x0510 //  disable bits: 0-hw,1-sw
  67.                                                                    
  68. #define FEB_SETNEVE              0x0514
  69. #define FEB_GETNEVE              0x0518
  70. #define FEB_DEBUGMON             0x051C
  71. #define FEB_SEUTRG               0x0520 //  seu sw trigger  
  72.  
  73.  
  74. #define FEB_DEADBEEF                0x0FFC //  register with a value 0xdeadbeef
  75. #endif /* BELLEPTS */
  76.  
  77. // SA02 commands
  78.  
  79. #define FEB_INIT                   0x00000000
  80. #define FEB_CREG                   0x01000000
  81. #define FEB_SHFT_CLK               0x01000000
  82. #define FEB_SEND_CLK               0x02000000
  83. #define FEB_SEL_MON                0x03000000
  84. #define FEB_MUX                    0x03000000
  85. #define FEB_SEL_DATA               0x04000000
  86.  
  87. #define FEB_TP                     0x05000000
  88. #define FEB_DLY0                   0x06000000
  89. #define FEB_SERIAL                 0x08000000
  90. #define FEB_DPM                    0x09000000
  91. #define FEB_VTH2                   0x090000B0
  92. #define FEB_VTH1                   0x090000B1
  93. #define FEB_TPLVL0                 0x090100B0
  94. #define FEB_TPLVL1                 0x090100B1
  95.  
  96. #define DPM_WRITE            0x00B00000
  97. #define DPM_CH1              0x00010000
  98.  
  99. #define FEB_SUBA_INC               0x00010000
  100. #define FEB_RO                     0x80000000
  101.  
  102. #define SA0x_ASIC0_CREG            0x0A000000
  103. #define SA0x_ASIC0_GREG            0x0B000000
  104. #define SA0x_ASIC0_CMON            0x0C000000
  105.  
  106. #define FEB_TMON0                  0x0D000000
  107. #define FEB_TMON1                  0x0D010000
  108.  
  109. #define FEB_ADC_READ              0x0E000000
  110. #define FEB_ADC_RESET             0x0E010000
  111.  
  112. #define ASIC_PHASECMPS   0x0000003
  113. #define ASIC_GAIN        0x000000c
  114. #define ASIC_SHAPINGTIME 0x0000030
  115. #define ASIC_COMPARATOR  0x0000040
  116. #define ASIC_VRDRIVE     0x0007F80
  117. #define ASIC_MONITOR     0x0018000
  118. #define ASIC_ID          0x3FE0000
  119.  
  120. #define ASIC_DECAYTIME      0x000007
  121. #define ASIC_OFFSET         0x000078
  122. #define ASIC_FINEADJ_UNIPOL 0x000780
  123. #define ASIC_FINEADJ_DIFF   0x007800
  124. #define ASIC_TPENDB         0x010000
  125. #define ASIC_KILL           0x100000
  126.  
  127. #define ASIC_PHASECMPS_SHFT   0
  128. #define ASIC_GAIN_SHFT        2
  129. #define ASIC_SHAPINGTIME_SHFT 4
  130. #define ASIC_COMPARATOR_SHFT  6
  131. #define ASIC_VRDRIVE_SHFT     7
  132. #define ASIC_MONITOR_SHFT     15
  133. #define ASIC_ID_SHFT          17
  134.  
  135. #define ASIC_DECAYTIME_SHFT      0
  136. #define ASIC_OFFSET_SHFT         3
  137. #define ASIC_FINEADJ_UNIPOL_SHFT 7
  138. #define ASIC_FINEADJ_DIFF_SHFT   11
  139. #define ASIC_TPENDB_SHFT         16
  140. #define ASIC_KILL_SHFT           17
  141.  
  142. #endif /* _SA02_DEF_H */
  143.