Skip to main content

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.

Metadata

Release files for nfb 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nfb 0.3.1
File Size Uploaded
nfb-0.3.1.tar.gz 368.6 kB Details

Release files / nfb-0.3.1.tar.gz

Download URL nfb-0.3.1.tar.gz
Size 368.6 kB
Tags Source
SHA-256 checksum
How to use checksums
8614cd80d82d12acbaf30c9abfab27d5df928d4cefc63e8c87869d88e1f5cc85
BLAKE2b-256 checksum
How to use checksums
27d57cfe9b1df013ce3b3553376f4d7fce21390d1c8c6f21808e5f90146c89dd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.6

Release history Release notifications | RSS feed

This release

0.3.1 This release

1 release file

0.3.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page