Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Related Pages

TimDefine.h

Go to the documentation of this file.
00001 //File: TimDefine.h
00002 
00003 #ifndef SCTPIXELROD_TIMDEFINE_H
00004 #define SCTPIXELROD_TIMDEFINE_H
00005 
00027 namespace SctPixelRod {
00028 
00029 #include "processor.h"
00030 
00032 
00033 enum TimTimingSCT {
00034      TIM_L1A_DEADTIME =  3,
00035      TIM_ECR_DEADTIME =  7,
00036      TIM_BCR_DEADTIME =  7,
00037      TIM_CAL_DEADTIME = 27,
00038      TIM_BCID_OFFSET  =  6
00039 };
00040 
00041 const INT32 TIM_L1ID_FIRST = 0; 
00042 
00046 const INT32 TIM_SEQ_SIZE = 0x4000; 
00047 const INT32 TIM_SEQ_ADDR = 0x8000; 
00048 
00050 
00051 enum TimRegister {
00052      TIM_REG_ENABLES      = 0x00,
00053      TIM_REG_COMMAND      = 0x02,
00054      TIM_REG_BURST_COUNT  = 0x04,
00055      TIM_REG_FREQUENCY    = 0x06,
00056      TIM_REG_WINDOW       = 0x08,
00057      TIM_REG_DELAY        = 0x0A,
00058      TIM_REG_STATUS       = 0x0C,
00059      TIM_REG_FIFO_STATUS  = 0x0E,
00060      TIM_REG_TRIGGER_IDLO = 0x10,
00061      TIM_REG_TRIGGER_IDHI = 0x12,
00062      TIM_REG_TRIGGER_BCID = 0x14,
00063      TIM_REG_TRIGGER_TYPE = 0x16,
00064      TIM_REG_RUN_ENABLES  = 0x18,
00065      TIM_REG_SEQ_CONTROL  = 0x1A,
00066      TIM_REG_SEQ_END      = 0x1C,
00067      TIM_REG_ROD_MASK     = 0x1E,
00068      TIM_REG_ROD_BUSY     = 0x20,
00069      TIM_REG_ROD_LATCH    = 0x22,
00070      TIM_REG_ROD_MONITOR  = 0x24,
00071      TIM_REG_TTC_DATA     = 0x26,
00072      TIM_REG_TTC_SELECT   = 0x28,
00073      TIM_REG_TTC_BCID     = 0x2A,
00074      TIM_REG_TTC_RX       = 0x2C,
00075      TIM_REG_TTC_STATUS   = 0x2E,
00076      TIM_REG_OUTPUT       = 0x30,
00077      TIM_REG_TIM_ID       = 0x32
00078 };
00079 
00081 
00082 enum TimBitEnables {
00083      TIM_BIT_EN_INT_TRIG = 0x0002,  
00084      TIM_BIT_EN_INT_ECR  = 0x0004,  
00085      TIM_BIT_EN_INT_BCR  = 0x0008,  
00086      TIM_BIT_EN_RANDOM   = 0x0010,  
00087      TIM_BIT_EN_INT_FER  = 0x0020,  
00088      TIM_BIT_EN_WINDOW   = 0x0040,  
00089      TIM_BIT_EN_INT_BUSY = 0x0080,  
00090 
00091      TIM_BIT_EN_EXT_CLK  = 0x0100,  
00092      TIM_BIT_EN_EXT_TRIG = 0x0200,  
00093      TIM_BIT_EN_EXT_ECR  = 0x0400,  
00094      TIM_BIT_EN_EXT_BCR  = 0x0800,  
00095      TIM_BIT_EN_EXT_CAL  = 0x1000,  
00096      TIM_BIT_EN_EXT_FER  = 0x2000,  
00097      TIM_BIT_EN_EXT_SEQ  = 0x4000,  
00098      TIM_BIT_EN_EXT_BUSY = 0x8000   
00099 };
00100 
00101 enum TimMaskFrequency {
00102      TIM_MASK_TRIG_100_KHZ = 0x0006,
00103      TIM_MASK_TRIG_10_0KHZ = 0x000E,
00104      TIM_MASK_TRIG_1_00KHZ = 0x0016,
00105      TIM_MASK_TRIG_0_10KHZ = 0x001E,
00106 
00107      TIM_MASK_FER_10_00HZ  = 0x0600,
00108      TIM_MASK_FER_1_000HZ  = 0x0E00,
00109      TIM_MASK_FER_0_100HZ  = 0x1600,
00110      TIM_MASK_FER_0_010HZ  = 0x1E00
00111 };
00113 enum TimBitBackplane {
00114      TIM_L1A = 0x01,       
00115      TIM_ECR = 0x02,       
00116      TIM_BCR = 0x04,       
00117      TIM_CAL = 0x08,       
00118      TIM_SID = 0x10,       
00119      TIM_STT = 0x20,       
00120      TIM_CMD = 0xCF,       
00121      TIM_RES = 0xC0,       
00122      TIM_FER = 0x40,       
00123      TIM_SPA = 0x80,       
00124      TIM_TRG = 0x31        
00125 };
00127 enum TimBitCommand {
00128      TIM_VTRG = 0x02,      
00129      TIM_VECR = 0x04,      
00130      TIM_VBCR = 0x08,      
00131      TIM_VCAL = 0x10,      
00132      TIM_VFER = 0x20,      
00133      TIM_VSPA = 0x40,      
00134 
00135      TIM_BIT_VRESET = 0x8000
00136 };
00137 
00138 enum TimBitRunEnables {
00139      TIM_BIT_EN_ID   = 0x0200,
00140      TIM_BIT_EN_TYPE = 0x0400
00141 };
00142 
00143 enum TimBitSeqControl {
00144      TIM_BIT_SEQ_EN_ALL = 0x00FF,
00145      TIM_BIT_SEQ_RESET  = 0x0200,
00146      TIM_BIT_SEQ_GO     = 0x0400,
00147      TIM_BIT_EN_CYCLIC  = 0x0800
00148 };
00149 
00150 } // End namespace SctPixelRod
00151 
00152 #endif // SCTPIXELROD_TIMDEFINE_H

Generated on Thu Jul 15 09:51:01 2004 for SCT DAQ/DCS Software - C++ by doxygen 1.3.5