Software Development Kit for BittWare FPGA Hardware
BittWare’s SDK is a cross-platform collection of drivers, libraries, modules, and utilities that aid in debugging and developing applications using BittWare FPGA cards. Use the SDK to get started quicker, with code samples for interfaces and a complete Card Support Package. Once your application is up and running, use the SDK utilities to monitor the health of your card.
What's in the SDK?
General Purpose Libraries
- PCI, USB, and BMC
- C APIs and Python modules
General Purpose Utilities
- Card lister
- Card monitor
- PCI peek-poke
- Clock programmer
- BMC firmware upgrader
- I2C peek-poke
Card Support Package
- Card Test
- Card and FPGA description files
- FPGA family library
- Card-specific utilities and examples
PCI and USB drivers
- Support for Windows and Linux
Get Started Quickly
With a variety of features for testing and development, the SDK gets you up and running quickly.
Quickly Test Card Function
The CSP includes a Card Test utility that customers can run on-site as an initial step to verify that all of the card’s interfaces are functioning properly.
- Represents a real-life FPGA application
- Tests all high-speed FPGA interfaces concurrently
- Tests the card power consumption and temperature
- Configurable settings
Start Development with Use-Specific Examples
The SDK provides several examples that you can use as a reference for your application development. Examples vary based on FPGA card, but may include:
- BMC example
- DMA example
The SDK also includes a number of use-specific CLI utilities, which prevent overly complicated command line. The utilities are written in Python, so they can also be used as examples.
Get started today using the SDK
When you purchase a BittWare card that has SDK support, the SDK is included free of charge. You will always have access to the initial release, with the option to purchase future updates.
Enterprise Class Commitment
As part of our commitment to enterprise-class products, we are making full use of continuous integration & deployment tools to automate BMC, SDK, and CSP testing and packaging.
This shortens release cycles and ensures more accuracy with each release.
Simplify Development and Integration
With a simplified scripting language and features for integrating the FPGA cards in a server, the SDK saves time and reduces risk.
Python Libraries and Examples
Libraries, examples, and utilities in the SDK are written in Python, which is easy to use and lets you develop and test applications more quickly.
Each library is also available as a C API, allowing greater optimization.
Windows and Linux Support
The SDK has drivers for Linux (CentOS and Ubuntu), along with a BittWare driver for Windows support.
PLDM for Server Integration
BittWare’s FPGA cards with SDK support are PLDM-ready. The BMC on the BittWare cards provides a PLDM protocol to each interface on the card, allowing integration with server BMCs.
System Monitoring with the BMC
- PCIe I2C (to integrate with the server BMC)
- Power sequencing
- Sensor monitoring
- Clock programming
- BMC firmware upgrade over USB or FPGA interfaces
- Low-level I2C access
- Card-level security
- BMC Root of Trust
- BMC and FPGA secure boot
- BMC and FPGA secure upgrade
- Key management