Presentation is loading. Please wait.

Presentation is loading. Please wait.

Babak Kalantari, EPICS Collaboration Meeting, Kobe 2009 A generic driver for Data Buffer of MRF Timing System Babak Kalantari Paul Scherrer Institute Switzerland.

Similar presentations


Presentation on theme: "Babak Kalantari, EPICS Collaboration Meeting, Kobe 2009 A generic driver for Data Buffer of MRF Timing System Babak Kalantari Paul Scherrer Institute Switzerland."— Presentation transcript:

1 Babak Kalantari, EPICS Collaboration Meeting, Kobe 2009 A generic driver for Data Buffer of MRF Timing System Babak Kalantari Paul Scherrer Institute Switzerland

2 Babak Kalantari, EPICS Collaboration Meeting, Kobe 2009 MRF Event System Data Buffer ■ Real-time data transfer parallel to event distribution ■ 2048 Bytes of raw data ■ Transfer rate half of the event clock ■ Applications include: ► Beam parameter distribution ► Beam-synchronous DAQ ► Bunch marking ► Global command/status distribution

3 Babak Kalantari, EPICS Collaboration Meeting, Kobe 2009 Exp._x Bunch_ID Exp. 2 Exp. 3 Exp. 4 Exp. 1 Beam source dev. 1 dev. 2 dev. 3 dev. 4 start Pulser RF Diag. Pulser RF Diag. …… 12 start Pulser RF Diag. … 3 Exp._x Bunch_ID

4 Babak Kalantari, EPICS Collaboration Meeting, Kobe 2009 Problem / Similarities? ■ Need an EPICS driver that: ● can send/receive data by standard record types ● is application- and site- independent ● easy to understand / use ■ Dev. Sup. layer similar to S7 PLC ● A data buffer of PVs (each in certain offset) sent over network ● Uses a generic device support layer ( regDev by Dirk Zimoch) ■ Need a driver layer for ► interaction with hardware ► low level communication handling

5 Babak Kalantari, EPICS Collaboration Meeting, Kobe 2009 One-to-one data mapping EVG DBuff EVR DBuff ao Offs=x Offs=y aao Offs=z bo ai Offs=x Offs=y waveform Offs=z bi 2)Flush 1)Write3)receive (I/O Intr) Protocol_data

6 Babak Kalantari, EPICS Collaboration Meeting, Kobe 2009 Support for protocols EVG (H/W) Data Buffer Tx Local Buffer (protocol_1) Local Buffer (protocol_2) Local Buffer (protocol_x) EVR (H/W) Data Buffer Rx Local Buffer (protocol_1) Local Buffer (protocol_2) Local Buffer (protocol_3) Flush Deliver Output records (set_x) Input records (set_x) Output records (set_1) Write Input records (set_1) Read

7 Babak Kalantari, EPICS Collaboration Meeting, Kobe 2009 Driver Software ■ Configuration mrfDBuffConfigure ("device", cardNum, Tx, protocolID) ■ DB: ► Output records ( ao, bo, mbbo, aao, stringout, longout, etc. ) ● OUT, “#C S @ / T= " ● SCAN, “Passive” ► Input records ( ai, bi, mbbi, waveform, stringin, longin, etc. ) ● OUT, “#C S @ / T= " ● SCAN, “I/O Intr” ► Special “bo” record: (data Flush) ● SCAN, “Passive” ● OUT, "#C S @" device name offset in bytes data type

8 Babak Kalantari, EPICS Collaboration Meeting, Kobe 2009 Example: ■ Startup: mrfDBuffConfigure (“myEvg_A", 2, 1, 10) mrfDBuffConfigure (“myEvr_A", 3, 0, 10) mrfDBuffConfigure (“myEvg_B", 2, 1, 15) mrfDBuffConfigure (“myEvr_B", 3, 0, 15) ■ DB: record (ai, "($NAME)") { field (DTYP, "regDev") field (INP, "@myEvr_A/4 T=FLOAT") field (SCAN, "I/O Intr") } record (stringin, "($NAME)") { field (DTYP, "regDev") field (INP, "@myEvr_B/4 T=STRING L=10") field (SCAN, "I/O Intr") }

9 Babak Kalantari, EPICS Collaboration Meeting, Kobe 2009 Status ■ In production use at swissFEL test-facilities ► Bunch marker ► Beam synchronous DAQ (single-shot) ■ How to get it: ► sourceForge EPICS Applications ● “mrfDataBufferApp” included in MRF Event System driver package http://epics.svn.sourceforge.net/viewvc/epics/applications/trunk/mrfEventSystem/

10 Babak Kalantari, EPICS Collaboration Meeting, Kobe 2009 Thanks!


Download ppt "Babak Kalantari, EPICS Collaboration Meeting, Kobe 2009 A generic driver for Data Buffer of MRF Timing System Babak Kalantari Paul Scherrer Institute Switzerland."

Similar presentations


Ads by Google