Speaker
Dr
Davit Kalantaryan
(DESY)
Description
Micro Telecommunications Computing Architecture (MTCA) is the new generation system, which should allow more stable and reliable control of the accelerator facilities such as the FLASH, the European XFEL, the PITZ and etc. Software development for MTCA devices is among the important tasks. It is undeniable that user space software development is preferable to kernel space software development. Therefore kernel space general purpose driver based on MTCA standards was developed. In the most cases only user space software will be enough to adopt new MTCA devices. The design and the development of the general driver started in 2013 with the objective of finally creating a driver that is able to handle as many MTCA devices as possible. The following rule is always kept: if a generalization of any functionality leads to penalty in performance or increase in memory usage or too complicated code is abandoned. In the case a device is not possible to be handled by this driver due to device very specific functionality, driver stacking can be used. The driver can be parent driver for specific device driver. This means for specific device driver only specific functionalities should be implemented with less coding. The driver already has use cases. Currently some of the functionalities of this driver are included to the ‘upciedev’ driver that is very widely used in DESY Hamburg. There is a plan after tests to include more general functionalities like interrupt handling DMA access etc.
The functionalities implemented so far, a comparison of different DMA schemas, and the performance analysis for some generalized functionalities also will be presented.
Primary author
Dr
Davit Kalantaryan
(DESY)
Co-author
Mr
Ludwig Petrosyan
(DESY)