A flexible and scalable development platform for modern FPGA projects


Keywords
asic, fpga, ci, simulation, test, vhdl, build-automation, eda, test-automation, rtl, verilog, xilinx, synthesis, vivado, systemverilog, implementation, vunit
License
BSD-1-Clause
Install
pip install tsfpga==12.3.1

Documentation

Project banner


Website Repository pypi License Chat CI status Python line coverage

tsfpga is a flexible and scalable development platform for modern FPGA projects. With its Python-based build/simulation flow it is perfect for CI/CD and test-driven development. The API is simple and easy to use (a complete simulation project is set up in less than 15 lines).

See documentation on the website: https://tsfpga.com

See PyPI for installation details: https://pypi.org/project/tsfpga/

Key features

  • Source code-centric project structure for scalability. Build projects, test configurations, constraints, IP cores, etc. are handled close to the source code, not in a central monolithic script.
  • Automatically adds build/simulation sources if a recognized folder structure is used.
  • Enables local VUnit test configuration without multiple run.py.
  • Handling of IP cores and simlib for your simulation project, with automatic re-compile when needed.
  • Python-based Vivado build system where many builds can be run in parallel.
  • Tightly integrated with hdl-registers. Register code generation is performed before each simulation and each build.
  • Released under the very permissive BSD 3-Clause License.

The maintainers place high focus on quality, with everything having good unit test coverage and a thought-out structure. The project is mature and used in many production environments.