Skip to content
forked from SiLab-Bonn/basil

A data acquisition framework in Python and Verilog.

License

Notifications You must be signed in to change notification settings

MarcoVogt/basil

 
 

Repository files navigation

Basil

Build status Documentation Code Health Gitter

Basil is a modular data acquisition system and system testing framework in Python.

It also provides generic FPGA firmware modules for different hardware platforms and drivers for wide range of lab appliances.

Documentation

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

Installation

Clone the repository to get a copy of the source code (for developers):

git clone https://github.com/SiLab-Bonn/basil.git
cd basil
python setup.py develop

or install via PyPI into the Python's site-packages folder (for non-developers):

pip install basil_daq==version

where version is a version number (e.g. 2.4.6)

or install from git, when no PyPI package is available (for non-developers):

pip install git+https://github.com/SiLab-Bonn/basil.git@branch

where branch is a branch name (e.g. master or v2.4.6).

Check .travis.yml for installation/testing hints.

Support

Basil mailing list: subscribe

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)

Example Projects:

  • pyBAR - Bonn ATLAS Readout in Python
  • MCA - Multi Channel Analyzer
  • fe65_p2 - DAQ for FE65P2 prototype

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

No packages published

Languages

  • Verilog 53.2%
  • Python 46.4%
  • Other 0.4%