00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef BOC_STRUCTURE_H
00014 #define BOC_STRUCTURE_H
00015
00016
00017
00018
00019 #define BOC_VAR_TXFINE 0x90
00020 #define BOC_VAR_TXCOARSE 0x91
00021 #define BOC_VAR_TXMARKSPACE 0x92
00022 #define BOC_VAR_TXINHIBIT 0x93
00023 #define BOC_VAR_TXCURRENT 0x94
00024
00025 #define BOC_VAR_RXTHRESHOLD 0xa0
00026 #define BOC_VAR_RXDELAY 0xa1
00027
00028 #define BOC_VAR_BPM_CLOCK_PHASE 0xb0
00029 #define BOC_VAR_BREG_CLOCK_PHASE 0xb1
00030 #define BOC_VAR_VERNIER_CLOCK_STEPPHASE0 0xb2
00031 #define BOC_VAR_VERNIER_CLOCK_STEPPHASE1 0xb3
00032 #define BOC_VAR_VERNIER_CLOCK_FINEPHASE 0xb4
00033
00034 #define BOC_VAR_BOCRESET 0xc0
00035 #define BOC_VAR_BPMRESET 0xc1
00036 #define BOC_VAR_TXDAC_CLEAR 0xc2
00037 #define BOC_VAR_RXDAC_CLEAR 0xc3
00038
00039 #define BOC_VAR_STAT 0xd0
00040 #define BOC_VAR_RXDATAMODE 0xd1
00041 #define BOC_VAR_CLOCKCTRLBITS 0xd2
00042
00043 #define BOC_VAR_FIRMWARE_REV 0xe0
00044 #define BOC_VAR_HARDWARE_REV 0xe1
00045 #define BOC_VAR_MODULETYPE 0xe2
00046 #define BOC_VAR_MNFT 0xe3
00047 #define BOC_VAR_SERIALNO 0xe4
00048
00049 typedef struct {
00050 UINT8 txFineDelay;
00051 UINT8 txCoarseDelay;
00052 UINT8 txMarkSpace;
00053 UINT8 txStreamInhibit;
00054
00055 UINT8 txCurrent;
00056 UINT8 unused[3];
00057 } BOCTxParams;
00058
00059 typedef struct {
00060 UINT8 rxThreshold;
00061 UINT8 rxDelay;
00062 } BOCRxParams;
00063
00064 typedef struct {
00065 UINT8 bpmClockPhase;
00066 UINT8 bRegClockPhase;
00067 UINT8 vernierClockStepPhase[2];
00068 UINT8 vernierClockFinePhase;
00069
00070 UINT8 bocReset;
00071 UINT8 bpmReset;
00072 UINT8 txDacClear;
00073 UINT8 rxDacClear;
00074
00075 UINT8 status;
00076 UINT8 rxDataMode;
00077 UINT8 clockCtrlBits;
00078
00079 UINT8 firmwareRev;
00080 UINT8 hardwareRev;
00081 UINT8 moduleType;
00082 UINT8 manufacturer;
00083 UINT8 serialNumber;
00084
00085 UINT8 unused[3];
00086 UINT32 unused1[3];
00087 } BOCGlobalParams;
00088
00089 typedef struct {
00090 BOCTxParams bocTxParams[48];
00091 BOCRxParams bocRxParams[96];
00092 BOCGlobalParams bocGlobalParams;
00093 } BOCConfig;
00094
00095 #endif
00096