Skip to content

SiLab-Bonn/basil

Repository files navigation

Basil

Build status Documentation

Basil is a modular data acquisition (DAQ) framework developed by SiLab for the characterization of monolithic and hybrid pixel detectors. It comprises a library of HDL modules (written in Verilog) for custom FPGA readout boards, paired with a collection of Python code that control the hardware over USB, Ethernet, or serial interfaces from a host PC. Basil also includes Python drivers for common lab instruments such as power supplies, oscilloscopes, and other bench equipment.

Features

Firmware:
  • very simple single master bus definition
  • multiple basic modules (SPI, SEQ, GPIO, I2C, JTAG)
  • multiple interfaces (UART, USB2, USB3, Ethernet)
Software:
  • layer structure following hardware
  • generation based on yaml file
  • register abstract layer (RAL)
  • simulator interface allows software test against simulated RTL (thanks to cocotb)

Installation

Install via PyPI:

pip install basil-daq

Note

The PyPI package may be outdated. Installing from source (below) is recommended to get the latest version.

Or install from source:

git clone https://github.com/SiLab-Bonn/basil.git
cd basil
pip install -e .

Support

Please use GitHub's issue tracker for bug reports/feature requests/questions.

For CERN users: Feel free to subscribe to the basil mailing list

Documentation

Documentation can be found under: https://basil.rtfd.org

Example Projects

  • TJ-Monopix2 - DAQ for TJ-Monopix2 depleted monolithic pixel sensor
  • BDAQ53 - Readout system for ATLAS ITkPix (RD53) chips
  • LF-Monopix2 - DAQ for LF-Monopix2 depleted monolithic pixel sensor
  • FRIDA - DAQ for FRIDA, an ADC test array for frame-based imaging detectors

License

If not stated otherwise.

Host Software:
The host software is distributed under the BSD 3-Clause ("BSD New" or "BSD Simplified") License.
FPGA Firmware:
The FPGA code is distributed under the GNU Lesser General Public License, version 3.0 (LGPLv3).

About

A data acquisition framework in Python and Verilog.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors