Presentation is loading. Please wait.

Presentation is loading. Please wait.

Dirk Zimoch, EPICS Collaboration Meeting, Vancouver 2009 Real-Time Data Transfer using the Timing System (Original slides and driver code by Babak Kalantari)

Similar presentations


Presentation on theme: "Dirk Zimoch, EPICS Collaboration Meeting, Vancouver 2009 Real-Time Data Transfer using the Timing System (Original slides and driver code by Babak Kalantari)"— Presentation transcript:

1 Dirk Zimoch, EPICS Collaboration Meeting, Vancouver 2009 Real-Time Data Transfer using the Timing System (Original slides and driver code by Babak Kalantari)

2 Dirk Zimoch, EPICS Collaboration Meeting, Vancouver 2009 Real-Time Data Transfer Key Hardware Features ■ Event rate max 125 MHz ■ 8 bit event code + 8 bit signals or data (multiplexed) ■ Real-time data transfer rate max 62.5 Mbytes/sec ■ At 1kHz linac repetition rate: ~60 kBytes/bunch

3 Dirk Zimoch, EPICS Collaboration Meeting, Vancouver 2009 Real-Time Data Transfer Event System Overview Event Generator Fan out ext. signals Event Receiver Event Receiver Event Receiver Event Stream Timing IOC local delays programmable pulses on/off signals real-time data Ref. clock master osc. FO links 50Hz mains 8 bit data8 bit event8 bit signals8 bit event

4 Dirk Zimoch, EPICS Collaboration Meeting, Vancouver 2009 Real-Time Data Transfer Sources of Real-Time Data ■ Master timing IOC: real-time ■ Other IOC: network latency but synchronous ■ Upstream via timing system: real-time Event Generator Event Receiver Event Receiver Event Receiver Event Receiver Event Receiver Timing IOC IOC2 FO links IOC3 IOC4 IOCn Network Event Receiver IOC1 Fan out

5 Dirk Zimoch, EPICS Collaboration Meeting, Vancouver 2009 Real-Time Data Transfer Driver Software ■ Real-time data is seen as buffer of 2048 bytes ► Variables can be mapped to offsets ► Event generator and receivers have to agree on mapping ► Send buffer on write or on trigger ► Interrupt on buffer receive ■ Configuration in startup script mrfDBuffConfigure ("device", cardno, eg) ■ Still some work to do ► Endian issues ► Scheduling

6 Dirk Zimoch, EPICS Collaboration Meeting, Vancouver 2009 Real-Time Data Transfer Device Support ■ Generic device support for blocks of registers ► Originally designed for S7 PLC communication over ethernet ► Supports all standard i/o record types and data types ► Process input records "I/O Intr" (with high priority) ■ Example record (ai, "($NAME)") { field (DTYP, "regDev") field (INP, T=FLOAT") field (SCAN, "I/O Intr") field (PRIO, "HIGH") field (PREC, "6" } device name offset in bytes data type

7 Dirk Zimoch, EPICS Collaboration Meeting, Vancouver 2009 Real-Time Data Transfer Example Real-Time Data ■ Bunch train counter ► 32 bit int ► double (52 bit mantissa) ► 3 day test shows 100% reliability ■ Other beam parameters ► bunch train length, energy, … ■ With upstream data: measured parameters ► intensity, position, … overflow in 16 months (at 100 Hz) good for 1.4 million years

8 Dirk Zimoch, EPICS Collaboration Meeting, Vancouver 2009 Real-Time Data Transfer Application Synchronization (e.g. synchronous camera and current monitor trigger) 1.Application sends code to timing master 2.Event system distributes application code 3.IOCs arm devices depending on code 4.Devices acquire data synchronously Exp. 2 Exp. 3 Exp. 4 Exp. 1 dev. 1 dev. 2 dev. 3 dev. 4 Beam source


Download ppt "Dirk Zimoch, EPICS Collaboration Meeting, Vancouver 2009 Real-Time Data Transfer using the Timing System (Original slides and driver code by Babak Kalantari)"

Similar presentations


Ads by Google