SystemRust
Description
SystemRust is a Rust-crate für hardware simulation akin to systemC for C++. I have developed this for my masters-project for my degree in computational engineering at the University of Rostock in the summer semester of 2025.
This crate is still being actively developed by me. Feel free to try it out but note that I will be changing it frequently and it may not even be usable for you at this point.
Supervisors:
- M.Sc. Benjamin Beichler
- M.Sc. Nico Graumüller
- Prof.Dr.Ing. Christian Haubelt
Licence
- MIT
Git-Repository
https://gitlab.amd.e-technik.uni-rostock.de/systemcrust/systemrust
UML-Diagram

Convert the log file to a .vcd file
If you would like to view the signal changes there is a folder with a C# script in the gitlab directory to convert it. The .vcd file can then be viewed with tools such as GTKWave.
Before you call SimulationContext::simulate(...) in your code you want to initialize a logger. I'm using env_logger
let log_file = create.unwrap;
new
.format
.filter_level
.target
.init;
Then after your SimulationContext::simulate(...) function just call convert_log_to_vcd(...).