Home

SVEC software

Linux software support for the Simple VME FMC Carriec (SVEC) module
described at the hardware project
page.

svec-sw comes with:

a kernel module (driver for SVEC carriers)

a set of configuration utilities

documentation for the above

In the image below you can see overview of the architecture behind this
project.
The components developed within this project are in dark blue, the
necessary components from other projects are shown in light
blue.

Architecture of the SVEC software project*

Description

svec-sw is based on the fmc-bus concept; theoretically it allows to
manage FMC devices (FPGA bitstream)
in a carrier-independent way. In other words, the svec-sw implements the
fmc-bus API, so the
FPGA driver will act on the FPGA without caring about the carrier board
(SVEC in this case).
Actually, it is not completely true due to the dependencies with the
vmebridge, so the FPGA driver
cannot be completely detached from the carrier board.

The basic software for the SVEC carrier configures the board,
pre-programs it with a
basic golden bitstream to bootstrap identification of FMC mezzanines,
reprograms
the SVEC with the required application gateware and registers the FMC
devices.
Thanks to the fmc-bus abstraction, FPGA drivers (sometimes erroneously
called
FMC drivers) can remain (almost) agnostic about their mezzanines'
hosting carrier.

In order to retrieve information about the VME bus, as shown in the
above picture, the svec-sw
has a little dependency with the vmebridge (also known as vmebus).
Currently, this project
is not part of OHWR and we cannot include it as sub-module of this
project. But, you can find
the source code at http://repo.or.cz/w/tsi148vmebridge.git