Timing System Developments

15
Micro-Research Finland Oy Timing System Developments Jukka Pietarinen EPICS Collaboration Meeting Shanghai March 2008

description

Micro-Research Finland Oy. Timing System Developments. Jukka Pietarinen EPICS Collaboration Meeting Shanghai March 2008. Micro-Research Finland Oy. Register Map Changes (new register mapping). Now available for CompactPCI boards PMC-EVR Main features - PowerPoint PPT Presentation

Transcript of Timing System Developments

Page 1: Timing System Developments

Micro-Research Finland Oy

Timing System Developments

Jukka Pietarinen

EPICS Collaboration Meeting ShanghaiMarch 2008

Page 2: Timing System Developments

Micro-Research Finland Oy

[email protected]

Register Map Changes (new register mapping)

• Now available for– CompactPCI boards– PMC-EVR

• Main features– Direct addressing of registers, sequencer memories, etc.– Register space has grown to 64 kbytes– One type of EVR pulse generator– 128 bit wide EVR event mapping RAM:

• No overlapping mapping bits– Mapping registers for HW inputs and outputs– EVG interrupt support– EVR Upstream signaling

• Will be available for VME versions later

Page 3: Timing System Developments

Micro-Research Finland Oy

[email protected]

EVR Pulse Generator

Width Counter

trigger

count enable

ouputpolarity

POLx

Pulse Outputto mapping logic

Delay Counter

reset trigger

count enableenable out

set

clear

set

Map RAM'set' pulse x

Map RAMtrigger x

event clk

Prescaler(optional)

Master enableSW enable

clear

Map RAM'reset' pulse x

ena

• One type of EVR pulse generator:– Registers for delay, width, prescaler with SW probable width– No more different types of outputs: PDP, OTP, TEV, LVL

Page 4: Timing System Developments

Micro-Research Finland Oy

[email protected]

Event Mapping RAMEvent code Internal func. Pulse trigger Pulse set Pulse clear

1 32 bits 32 bits 32 bits 32 bits

2

255

Map bit Default event code Function

127 n/a Save event in FIFO

126 n/a Latch timestamp

125 n/a Led event

124 n/a Forward event

123 0x79 Stop event FIFO

102 to 122 n/a (Reserved)

Map bit Default event code Function

101 0x7a Hearbeat

100 0x7b Reset Prescalers

99 0x7d Timestamp reset event

98 0x7c Timestamp clock event

97 0x71 Seconds shift register ‘1’

96 0x70 Seconds shift register ‘0’

Page 5: Timing System Developments

Micro-Research Finland Oy

[email protected]

Register Map Changes

• Same set of VHDL sources for all form factors• EVR configuration determined by a VHDL package

– Number of front panel I/O– Number of Universal I/O modules– Backplane I/O– Number of pulse generators (max. 32)– Pulse delay and width extents

Page 6: Timing System Developments

Micro-Research Finland Oy

[email protected]

VHDL package for cPCI-EVR -- Event Receiver configuration parameters -- C_EVR_PULSE_GENS sets the number of internal pulse generators constant C_EVR_PULSE_GENS : integer := 10; constant C_EVR_TTL_INPUTS : integer := 2; -- C_EVR_TTL_OUTPUTS defines the number of front panel TTL outputs constant C_EVR_TTL_OUTPUTS : integer := 0; -- C_EVR_CML_OUTPUTS defines the number of front panel CML outputs -- note: the CML output mapping registers are appended after the -- TTL output mapping registers constant C_EVR_CML_OUTPUTS : integer := 0; -- C_EVR_UNIV_OUTPUTS defines the number of Universal outputs -- = twice the number of Universal I/O slots constant C_EVR_UNIV_OUTPUTS : integer := 10; constant C_EVR_UNIV_INPUTS : integer := 10; -- C_EVR_GPIOS defines the number of GP I/Os in Universal I/O slots constant C_EVR_GPIOS : integer := 8; -- C_EVR_TB_OUTPUTS defines the number of Transition Board/Rear I/O/ -- PXI star trigger/trigger bus outputs constant C_EVR_TB_OUTPUTS : integer := 0;

Page 7: Timing System Developments

Micro-Research Finland Oy

[email protected]

VHDL package for cPCI-EVR (cont.)

-- C_EVR_PRESCALERS defines the number of prescalers constant C_EVR_PRESCALERS : integer := 3; constant C_EVR_PULSE_PRESC_RANGE : integer_array(0 to C_EVR_PULSE_GENS-1) := (16, 16, 16, 16, 0, 0, 0, 0, 0, 0); constant C_EVR_PULSE_DELAY_RANGE : integer_array(0 to C_EVR_PULSE_GENS-1) := (32, 32, 32, 32, 32, 32, 32, 32, 32, 32); constant C_EVR_PULSE_WIDTH_RANGE : integer_array(0 to C_EVR_PULSE_GENS-1) := (32, 32, 32, 32, 16, 16, 16, 16, 16, 16); constant C_EVR_PRESC_RANGE : integer_array(0 to C_EVR_PRESCALERS-1) := (16, 16, 16); constant C_EVR_MICREL_WORD : std_logic_vector := X"0C928166"; constant C_EVR_USEC_DIVIDER : std_logic_vector := X"007D"; constant C_EVR_USE_TRANSMITTER : boolean := TRUE; -- C_EVR_ENABLE_BACKWARD_CHANNEL enables EVR event transmission and -- disables loopback of received event stream constant C_EVR_ENABLE_BACKWARD_CHANNEL : boolean := TRUE;

Page 8: Timing System Developments

Micro-Research Finland Oy

[email protected]

Downstream Timing

Event Generator (EVG)

12-Way Fan-Out

RF input (50 MHz to 1.6 GHz)Rep. Rate Trigger Input

e.g. 50 Hz TTL

Hardware Triggers/Clocks

12-Way Fan-Out

Event Receiver (EVR)

Hardware Outputs

Event Receiver (EVR)

Event Receiver (EVR)

Multimode fiber

Page 9: Timing System Developments

Micro-Research Finland Oy

[email protected]

Timing System with Upstream

Event Generator (EVG)

Fan-Out/Concentrator

RF input (50 MHz to 1.6 GHz)Rep. Rate Trigger Input

e.g. 50 Hz TTL

Hardware Triggers/Clocks

Fan-Out/Concentrator

Event Receiver (EVR)

Hardware Outputs

Event Receiver (EVR)

Event Receiver (EVR)

Multimode fibers

Page 10: Timing System Developments

Micro-Research Finland Oy

[email protected]

Timing System Upstream Channel

• Backward events– EVR send events on external HW triggers– Forwarding of received events filtered by event code– Concentrators forward events on first in first out basis

• Backward Distributed Bus– External inputs provide signals to up to eight backward

distributed bus signals– Concentrators combine distributed buses from all EVRs

(bitwise OR)• Backward Data Transmission

– Data buffers of up to 2k may be send upstream– Concentrators pass data on as-is, if EVR identification is

needed and ID has to be included in data– Note: concentrator buffering capacity is limited

• Fiber delay measurement

Page 11: Timing System Developments

Micro-Research Finland Oy

[email protected]

Fan-Out Concentrator Module (cPCI-FOUT-CT-8)

Page 12: Timing System Developments

Micro-Research Finland Oy

[email protected]

Fiber Delay Measurement Setup

EVG

FOUT-CT-8

EVRLoopback

EVRLoopback

EVR

Scope

Fiber under test

Fiber length

Scope Delay

Timing System Diff

relative error

relative error

m ns ns ns ns mm

9 46,414 340,418 294,004 0,000 0,000

24 120,72 414,733 294,013 0,009 1,797

44 219,641 513,628 293,987 -0,017 -3,393

84 416,99 711,010 294,020 0,016 3,170

164 812,625 1106,629 294,004 -0,001 -0,105

294 1455,446 1749,457 294,011 0,007 1,340

554 2741,692 3035,692 294,000 -0,005 -0,930

Page 13: Timing System Developments

Micro-Research Finland Oy

[email protected]

Fiber Delay Measurement1 km Fiber

5281,2

5281,4

5281,6

5281,8

5282

5282,2

5282,4

8:24:00 8:52:48 9:21:36 9:50:24 10:19:12 10:48:00 11:16:48 11:45:36 12:14:24

time

Dela

y (n

s)

std.dev. between 10:40 and 10:55 2.2 ps

Scope off Heater 50˚C

Heater 70˚C

Heater 80˚C

Page 14: Timing System Developments

Micro-Research Finland Oy

[email protected]

Fiber Delay Measurement

730 m Fibre

3946,6

3946,7

3946,8

3946,9

3947

3947,1

3947,2

3947,3

3947,4

3947,5

3947,6

12:28:48 12:57:36 13:26:24 13:55:12 14:24:00 14:52:48 15:21:36 15:50:24 16:19:12

Cold Spray

Page 15: Timing System Developments

Micro-Research Finland Oy

[email protected]

Form Factors

• Event Generator– VME64x– PXI/CompactPCI

• Event Receiver– VME64x– PMC– PXI/CompactPCI 3U– Future form factors:

• CompactPCI 6U?• CompactRIO (National Instruments)?• EPIC form factor? (see http://www.pc104.org)

– Integrated CPU (either soft-CPU inside FPGA or Freescale Coldfire) – Integrated EVR– PC104 bus / PCI bus

• uTCA?