Cargando…

ZIO: The Ultimate Linux I/O Framework

ZIO (with Z standing for “The Ultimate I/O” Framework) was developed for CERN with the specific needs of physics labs in mind, which are poorly addressed in the mainstream Linux kernel. ZIO provides a framework for industrial, high-bandwith, high-channel count I/O device drivers (digitizers, functio...

Descripción completa

Detalles Bibliográficos
Autores principales: Gonzalez Cobas, J D, Wlostowski, T, Rubini, A, Nellaga, S, Vaga, F
Lenguaje:eng
Publicado: 2013
Materias:
Acceso en línea:http://cds.cern.ch/record/1620805
Descripción
Sumario:ZIO (with Z standing for “The Ultimate I/O” Framework) was developed for CERN with the specific needs of physics labs in mind, which are poorly addressed in the mainstream Linux kernel. ZIO provides a framework for industrial, high-bandwith, high-channel count I/O device drivers (digitizers, function generators, timing devices like TDCs) with performance, generality and scalability as design goals. Among its features, it offers abstractions for • both input and output channels, and channel sets • run-time selection of trigger types • run-time selection of buffer types • sysfs-based configuration • char devices for data and metadata • a socket interface (PF ZIO) as alternative to char devices In this paper, we discuss the design and implementation of ZIO, and describe representative cases of driver development for typical and exotic applications: drivers for the FMC (FPGAMezzanine Card, see [1]) boards developed at CERN like the FMC ADC 100Msps digitizer, FMC TDC timestamp counter, and FMC DEL fine delay.