| Crates.io | xvc-server |
| lib.rs | xvc-server |
| version | 0.1.0 |
| created_at | 2025-11-19 14:50:58.637067+00 |
| updated_at | 2025-11-19 14:50:58.637067+00 |
| description | Library for implementing Xilinx Virtual Cable (XVC) servers that handle JTAG communication with FPGA devices over network connections |
| homepage | |
| repository | https://github.com/Schottkyc137/xvc-rs |
| max_upload_size | |
| id | 1940197 |
| size | 13,400 |
A Rust library for implementing Xilinx Virtual Cable (XVC) servers that handle JTAG communication with FPGA devices over network connections.
use xvc_server::{XvcServer, server::{Server, Config}};
use std::net::{IpAddr, Ipv4Addr, SocketAddr};
// Implement the trait for your hardware
struct MyDriver;
impl XvcServer for MyDriver {
fn set_tck(&self, period_ns: u32) -> u32 {
period_ns
}
fn shift(&self, _num_bits: u32, _tms: Box<[u8]>, tdi: Box<[u8]>) -> Box<[u8]> {
tdi
}
}
// Create and run the server
let driver = MyDriver;
let config = Config::default();
let server = Server::new(driver, config);
let addr = SocketAddr::new(IpAddr::V4(Ipv4Addr::LOCALHOST), 2542);
server.listen(addr)?;
See the crate documentation for detailed documentation.