Python API for control of the CESNET NDK based FPGA acceleration cards
Project description
pynfb
Python API for control of the CESNET NDK based FPGA acceleration cards.
This package provides Python bindings (via Cython) over libnfb and the
Netcope library, enabling register access, packet transmission (NDP queues),
and Ethernet MAC management on NFB/NDK FPGA cards.
Prerequisites
pynfb is a source distribution — it compiles Cython extensions at install
time and links against the system-installed libnfb and libfdt shared
libraries. The nfb-framework package (providing libnfb, the NFB kernel
driver, and the required headers) must be installed first.
Minimum version: pynfb 0.3.0 requires nfb-framework >= 6.28. The pynfb version is independent from the nfb-framework version.
Fedora / RHEL / Oracle Linux (RPM)
Enable the COPR repository and install nfb-framework:
sudo dnf copr enable @CESNET/nfb-framework
sudo dnf install nfb-framework
You also need the development files for building:
sudo dnf install libfdt-devel python3-Cython gcc
Build from source
See the NDK software build instructions
for compiling libnfb and the kernel driver from source.
Installation
Once the prerequisites are in place:
pip install nfb
Quick start
import nfb
dev = nfb.open() # opens /dev/nfb0
comp = dev.comp_open("netcope,my_comp", 0)
comp.write32(0x100, 0xDEADBEEF)
val = comp.read32(0x100)
Documentation
License
BSD 3-Clause License. See LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file nfb-0.3.0.tar.gz.
File metadata
- Download URL: nfb-0.3.0.tar.gz
- Upload date:
- Size: 360.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a924354480335cb67864ac34ccb7ee2e80ebd7aab7406c140b8b55dfda660796
|
|
| MD5 |
8271d8de31f4ce2aef93b9a6b0255fc1
|
|
| BLAKE2b-256 |
24c3296c878964d10c3180b623d44011eb96b62c47bed7450f6529c7575db4d2
|