2 个不稳定版本
0.2.0 | 2021年9月13日 |
---|---|
0.1.0 | 2021年9月7日 |
#1524 in 数学
每月91次下载
12KB
263 行
sv4state
sv4state 是一个用于 SystemVerilog 4-state 值的 Rust 库。通过 SystemVerilog DPI 传递的 logic
值可以由这个库处理。
示例
svLogicVecVal
展示了一个 32 位的 logic
值。因此,logic [127:0]
对应于 [svLogicVecVal; 4]
。
use sv4state::{svLogicVecVal, Sv4State};
#[no_mangle]
pub extern "C" fn get_data(data: &[svLogicVecVal; 4]) {
let sv_u32 = Sv4State::<u32>::from_dpi(data);
println!("{:x}", sv_u32[0]);
println!("{:x}", sv_u32[1]);
println!("{:x}", sv_u32[2]);
println!("{:x}", sv_u32[3]);
}
可以通过以下方式通过 SystemVerilog DPI 调用 get_data()
import "DPI-C" function void get_data(
input logic [127:0] data
);
依赖项
~155KB