1 / 10

User Oriented APIs for Timing System

Timing Workshop – 5 th June 2014, Prague. User Oriented APIs for Timing System. Jim Chen Hytec Electronics Ltd. Timing Workshop – 5 th June 2014, Prague. The Problem.

jensen
Télécharger la présentation

User Oriented APIs for Timing System

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Timing Workshop – 5th June 2014, Prague User Oriented APIs for Timing System Jim Chen Hytec Electronics Ltd

  2. Timing Workshop – 5th June 2014, Prague The Problem • MRF timing module now has many functionalities rather than purely trigger generation. These include timestamp, event FIFO, data transmit and even GPIO etc. This is excellent! • Timing system also has many ways of generating signals – distributed bus, events, sequencer, prescaler etc. This is also good. • Variety of outputs – TTL, LVPECL, CML, Univ I/O. Great! • Many form factors. • One of the problems – functions are not always to all platforms • Not easy to configure – especially for new comers Jim Chen Hytec Electronics Ltd

  3. Timing Workshop – 5th June 2014, Prague What we end up • MRF provides low level APIs for VxWorks/RTEMS and Linux • Each lab has its own app implementation. • mrfioc2 • Cosylab • Taiwan Light Source – TPS pciGeneral Device Support • Hytec UDP for Orion, APIs for ELI, NUS • …… • Re-invent the wheel from time to time and it continues Jim Chen Hytec Electronics Ltd

  4. Timing Workshop – 5th June 2014, Prague What end-user needs Triggers! Jim Chen Hytec Electronics Ltd

  5. Timing Workshop – 5th June 2014, Prague What end-user needs • Generate repetitive triggers in different frequencies • Fire single shot • Set delay/relative delay and width for each trigger • Enable/disable triggers/modules • Set up timestamp • Transfer data • Interrupt notification and callback • etc… Jim Chen Hytec Electronics Ltd

  6. Timing Workshop – 5th June 2014, Prague What would be nice • Trigger implementation transparent to the user –EvrSetPulseProperties, EvrSetPrescalerTrig, EvrUnivDlySetDelay, EvrSetFineDelay – hide all these! • User function oriented rather than device function oriented • A Generic API function set for all platforms – EPICS, TANGO, OPC, VxWorks, Linux and Windows • Maintained by community or by Jukka? Jim Chen Hytec Electronics Ltd

  7. Timing Workshop – 5th June 2014, Prague How easy to achieve this • Not easy given so many options • Need well defined structures • Need many branches to distinguish architecture differences, signal generation differences, trigger type differences, output type differences, jitter requirement and accuracy differences etc. • Separate the OS specific from the generic APIs • Proper interrupt mechanism and callback • Endian issue Jim Chen Hytec Electronics Ltd

  8. Timing Workshop – 5th June 2014, Prague What we can do Jim Chen Hytec Electronics Ltd

  9. Timing Workshop – 5th June 2014, Prague The main entities • OS resource wrapper – base address, interrupt, DMA if required • Jukka’s low level APIs • Trigger structure – need to cover all aspects • Trigger – need to encapsulate all operations • EVG – capable of defining trigger source or the combination • EVR – simple class Jim Chen Hytec Electronics Ltd

  10. Timing Workshop – 5th June 2014, Prague The implementation • Let’s discuss…… Jim Chen Hytec Electronics Ltd

More Related