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/
- 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.