*Timepix3 onechip config file *Values can be decimal, or 0x___ style hex *Everything after a * is ignored *Output Block Config reg (16b)- see Table 15: * [7:0] = chanmask = 00000001 * [10:8] = clk_readout_source = 101 * [11] = 10B/8B Encode ON = 1 * [12] = ClkOutData ON = 1 * [15:13] = ClkOutSource = 101 (ExtClk) *40MHz ext clock: *OUTBLKCONFIG = 0xBDFF *40MHz internal clock: *OUTBLKCONFIG = 0x9CFF *80MHz int clock: *OUTBLKCONFIG = 0x7BF0 *160MHz int clock: *OUTBLKCONFIG = 0x5A08 *320MHz int clock: OUTBLKCONFIG = 0x39FF *Begin Pixel matrix params *Set them all the same at this point, except one test_bit PIXTHRESH = 7 *0 to 15 *Set to 1 to read back the PCR matrix (this disables pixel) *Set to 0 to read science data MASKBIT = 0 *Set to 0 to enable the test pulse into all pixels except one *Set to 1 to enable the test pulse into only one pixel TESTBIT = 0 *Invert one of the test_bits TESTPIXCOL = 52 TESTPIXROW = 111 *End Pixel matrix params *Begin Periphery PARAMS- Datasheet Table 9 SENSDACSEL = 0x1D EXTDACSEL = 0x00 *TestPulse Params, see Table 14 TPPERIOD = 2 *0 to 0xfff, MS nibble is phase TPNUMBER = 400 *0 to 65535 *PLL Config Reg, 14b- see Table 16 * [0] PLL Bypass = 0 * [1] not Reset PLL = 1 (PLL is held reset) * [2] Select Vcntrl for Matrix VCOs = 1 (from PLL) * [3] DualEdgeClk = 1 * [5:4] PhaseShift Divide = 01 (div by 8) * [8:6] Phase shift number = 000 (1 clock cycle) * [13:9] PLL Monitor out select = 00001 (clk_ph[0]) * [13:9] PLL Monitor out select = 10011 (TestPulseOut) * [13:9] PLL Monitor out select = 10100 (ShutterOut) * [13:9] PLL Monitor out select = 10101 (Eoc Active) *PLLCONFIGREG = 0x021E *(clk_ph[0]) *PLLCONFIGREG = 0x261E *(TestPulseOut) PLLCONFIGREG = 0x281E *(ShutterOut) *PLLCONFIGREG = 0x2A1E *Eoc Active *General Config Reg, header 0x30, 12b- see Table 18 * [0] Polarity = 1 (electrons) * [2:1] Pixel mode 00 = ToA & ToT, 01 = ToA, 10 = Ev & iToT * [3] Gray count en = 0 * [4] AckCommand En = 0 * [5] TP Enable = 1 * [6] Fast LO Enable = 0 * [7] Stop timer when full = 0 * [8] = 0 * [9] TP to inpu/discrim = 0 (input) * [10] TP Ext/Int = 0 (Int) * [11] ToA Clk Sel = 0 *REPLACED THE ABOVE WITH INDIVIDUAL SETTINGS: *PIXMODE * 0 = TOA and TOT * 1 = TOA only * 2 = Event and iTOT PIXMODE = 0 *GRAYCOUNT 0 = off, 1 = on GRAYCOUNT = 1 *TPENABLE 0 = off, 1 = on TPENABLE = 0 *FASTLO 0 = off, 1 = on FASTLO = 0 *TESTPULSEIN 0 = analog, 1 = digital *TESTPULSEIN = 0 TESTPULSEIN = 0 *TPEXTINT 0 = use internal testpulse, 1 = use external testpulse TPEXTINT = 0 SLVSCONFIGREG = 8 *Table 19 *SLVSCONFIGREG = 0 *Max current POWPULSEPAT = 0x0000 *Table 20 SETTIMELOW = 0x0 SETTIMEMID = 0x0 SETTIMEHIGH = 0x0 *End of Periphery parameters *Begin DAC Values *HIGH POWER MODE *DACVAL_1 = 128 *IBPREAMPON *DACVAL_8 = 128 *IBIASDISCS1ON *DACVAL_10 = 128 *IBIASDISCS2ON *DACVAL_12 = 128 *IBIASPIX *MED POWER MODE *DACVAL_1 = 32 *IBPREAMPON *DACVAL_8 = 32 *IBIASDISCS1ON *DACVAL_10 = 32 *IBIASDISCS2ON *DACVAL_12 = 60 *IBIASPIX *LOW POWER MODE DACVAL_1 = 8 *IBPREAMPON DACVAL_8 = 8 *IBIASDISCS1ON DACVAL_10 = 8 *IBIASDISCS2ON DACVAL_12 = 20 *IBIASPIX DACVAL_2 = 8 *IBPREAMPOFF DACVAL_3 = 128 *VPREAMPNCAS- DACVAL_4 = 128 *IBIASKRUM DACVAL_5 = 128 *VFBK *DACVAL_6 = 0 *VTHRFINE *DACVAL_7 = 0 *VTHRCOARSE DACVAL_7 = 8 *VTHRCOARSE DACVAL_6 = 320 *VTHRFINE DACVAL_9 = 8 *IBIASDISCS1OFF DACVAL_11 = 8 *IBIASDISCS2OFF DACVAL_13 = 128 *IBIASTPBIN DACVAL_14 = 128 *IBIASTPBOUT DACVAL_15 = 0 *VTPCOARSE DACVAL_16 = 0 *VTPFINE DACVAL_17 = 128 *IBIASCPPLL DACVAL_18 = 128 *PLLVCNTRL *End DAC Values * Shutter stuff *SHUTTER_MODE is a 4-bit word: * bit 0 ext_trig_enable * bit 1 soft_trigger * bit 2 force shutter high * bit 3 force shutter low SHUTTERMODE = 2 *Begin Shutter Values *Can have up to 256 of each WAIT and OPEN, 16b values, in 100ns steps *Minimum value for WAIT is 2 WAIT_0 = 2 WAIT_1 = 100 WAIT_2 = 100 WAIT_3 = 100 WAIT_4 = 100 WAIT_5 = 100 OPEN_0 = 100 OPEN_1 = 100 OPEN_2 = 0 OPEN_3 = 0 OPEN_4 = 0 OPEN_5 = 0 *Local registers U25_REG1 = 0x10 *Config, set comparator mode U25_REG4 = 0x4980 *Tcritical, degC * 128, (0x4980 = 147C, but we don't use it) U25_REG5 = 5 *Hysteresis, degC U25_REG6 = 0x2080 *Thigh setpoint, degC x 128 (0x2080 = 65C) *Shutdown happens at Thigh + Thyst; restore happens at Thigh *U25_REG6 = 0x1400 *Thigh setpoint, degC x 128 (0x1400 = 40C) *U25_REG7 = 0x500 *Tlow, degC x 128 (0x500 = 10C) U25_REG7 = 0xCE00 *Tlow, degC x 128 (65536-128*Neg Deg C = -100C) U26_REG1 = 0x10 *Config, set comparator mode U26_REG4 = 0x4980 *Tcritical, degC * 128, (0x4980 = 147C, but we don't use it) U26_REG5 = 5 *Hysteresis, degC U26_REG6 = 0x2080 *Thigh setpoint, degC x 128 (0x2080 = 65C) *U26_REG7 = 0x500 *Tlow, degC x 128 (0x500 = 10C) U26_REG7 = 0xCE00 *Tlow, degC x 128 (65536-128*Neg Deg C = -100C) FE_DAC0 = 0x0 FE_DAC1 = 0x0 FE_DAC2 = 0x0 FE_DAC3 = 0x0 FAKE_RATE_0 = 0 FAKE_RATE_1 = 0 FAKE_RATE_2 = 0 FAKE_RATE_3 = 0 PLL_MON_SEL = 2 MAX_UDP_INT = 254