Crates.io | vcd-ng |
lib.rs | vcd-ng |
version | 0.2.0 |
source | src |
created_at | 2022-10-21 12:02:28.019867 |
updated_at | 2024-09-05 22:01:56.470242 |
description | Read and write VCD (Value Change Dump) files, the next generation. |
homepage | |
repository | |
max_upload_size | |
id | 693439 |
size | 74,194 |
This is a fork of rust-vcd that does some performance-centric changes, including:
IdCode
changed to natural byte order, which gives consecutive indices with Synopsys VCS generated trace.
FastFlow
is implemented which uses a fast line reader to scan for bit vector changes.
CompactString
and BitVec
are used to represent strings and bits in the original API.
By experiments, FastFlow
is very fast, but lacks some compatibility with ill-indented file and bad-formed whitespaces.
BitVec
actually slows down the program if there are many 1-bit signals.
Please benchmark before you use.
The original version is by Kevin Mehall, with README as follows.
This crate reads and writes VCD (Value Change Dump) files, a common format used with logic analyzers, HDL simulators, and other EDA tools. It provides streaming wrappers around the io::Read
and io::Write
traits to read and write VCD commands and data.