warp-devices

Crates.iowarp-devices
lib.rswarp-devices
version0.3.1
sourcesrc
created_at2022-10-12 14:59:34.52642
updated_at2022-10-12 16:02:39.488063
descriptionLibrary for interfacing with Xilinx XDMA FPGAs
homepage
repositoryhttps://github.com/Quarky93/warpshell
max_upload_size
id686370
size59,613
Vladimir Komendantskiy (vkomenda)

documentation

README

XDMA device library

This is a user-space library for interfacing with Xilinx FPGAs using the Xilinx XDMA driver. The library is a part of the warpshell project to improve Vivado flow support on the Varium C1100 compute accelerator card. Support for other cards from the Alveo and Versal series may be added in the future.

See the warpshell README for more information.

Build

  • Install Rust

  • cargo build to just build

Setup

Currently it is required to change character device permissions from the ones set (incorrectly) by the XDMA kernel driver. The host-to-card devices should be write-only. The card-to-host devices should be read-only.

To run benchmarks without sudo, all XDMA character devices should be assigned to a group which also contains the user who is running the benchmarks.

There is a handy script for that.

Test

  • cargo test to build and run unit tests

  • RUST_LOG=debug cargo test -- --nocapture to show debug logs in all tests

Benchmark

  • cargo install cargo-criterion to install the Cargo Criterion subcommand

  • cargo criterion --output-format verbose to build and run benchmarks

Examples

  • cargo run --example cms_regs to read CMS register values
Commit count: 153

cargo fmt